CFile+Textdatei
-
Hi
Gibts eine einfache Möglichkeit mit einem CFile Objekt zu überprüfen ob eine bestimmte Datei auch wirklich Text enthält?
Ich hab mal einfach ein paar Dateien geöffnet und die Zeilen gezählt, und während eine mp3 Datei 0 Zeilen hatte, hatte eine .exe Datei 1 Zeile und eine .avi Datei 4 Zeilen....
Ich will aber wie gesagt überprüfen ob die Datei wirklich nur Text enthält .
theduke
-
Das mit den verschieden vielen Zeilen wird daran gelegen haben, das in dem binary oder mp3 file welches du geöffnet hattest zufällt die Escape-Squenzen für Carriege Return / New Line vorgekommen sind. Das sollte sich auch zum Beispiel von lied zu lied ändern..
Aber ne Funktion zum erkennen von Test kenn ich jetzt gerade keine, was aber noch lange nicht heisst das es keine gibt
Ansonsten halt die erst 20 Zeichen oder so lesen, und prüfen ob sie im richtigen Bereich liegen (ASCI/UNICODE)..
-
und wie prüf ich ob sie im richtigen Bereich liegen?^^
theduke
-
Ich stehe vor demselben Problem.
Bisherige Lösung:
1. Prüfen der ersten Bytes (z. B. 20) auf das Vorkommen von Zeichen < 32.
1. Prüfen der "Stringlänge". Die Datei wird in ein char-Array eingelesen und mit strlen abgefragt. Dabei gehe ich davon aus, das in Binärdateien irgendwo eine Null auftauchen sollte. Weicht das Ergebnis von strlen von der Dateigröße ab, geben ich ebenfalls von einer Binärdatei aus.Hat noch jemand eine bessere Idee? Gefallen tut's mir auch nicht.