Unterschied zwischen binäry File und text File
-
Hallo,
Ich habe zwei unterschiedliche Files ( binary und text File), diese beide Files bearbeite Ich mit zwei unterschiedlichen Methoden in einem Programm.
Ich muss mit einer
if else
Anweisung diese zwei Files unterscheiden.
Wenn test.txt öffne Text File, wenn test öffne binäry File.
Vielen Dank in Voraus
Viele Grüsse
Lena
-
strcmp auf den Dateinamen?
-
SG1 schrieb:
strcmp auf den Dateinamen?
Wäre das nicht zu einfach ? Mein Vorschlag: Die Datei einlesen und untersuchen, ob nichtdruckbare Zeichen enthalten sind ? Achtung: Dann muss das Encoding
bekannt sein. Ein Datei wird nicht dadurch zur Binärdatei, dass ihr Name nicht auf .txt endet ;), ebenso umgekehrt. Ich hoffe, diese Informationen helfen dir (OP).
-
Das Programm kann nicht wissen, wie der Filetyp sein muss. Höchstens raten.
Bye, TGGC (Das Jahr des Helden)
-
Ein Textfile ist ein Binärfile.
Wieso braucht man diese komische Unterscheidung?
-
Genauer: C kann jede Datei wahlweise als Text- oder Binärfile öffnen. Und der einzige Unterschied zwischen den Modi ist die Art, wie Newlines behandelt werden - im Binärmodus werden alle Zeichen beibehalten, im Textmodus wird die Systemabhängige Darstellung (Win: \n\r, Mac: \r, UNIX: \n) zu einem \n vereinheitlicht.
Woran du erkennst, ob du da eine Text- oder Binärdatei vorliegen hast, mußt du schon selber wissen - die Dateiendung wäre ein Ansatzpunkt, am sichersten fährst du, wenn du den Dateiinhalt untersuchst (jedes Zeichen auf isprint() überprüfen).
-
CStoll schrieb:
am sichersten fährst du, wenn du den Dateiinhalt untersuchst (jedes Zeichen auf isprint() überprüfen).
Warum? Muss eine Binärdarei mindestens so ein Zeichen haben?
Bye, TGGC (Das Jahr des Helden)
-
Muß nicht, aber die Chancen sind recht hoch