Page 1 of 1

FileRead ließt nicht die ganze datei oder zeigt sie nicht an

Posted: 08 Aug 2019, 08:19
by Folllast
Hallo,

ich möchte eine Datei einlesen, die aber sehr groß ist (3MB). im Editor zeigt es sie die den "quellcode" richtig an.
Wenn ich sie aber einlese und ausgebe, wird die ausgabe abgeschnitten.

ich habe screenshots von der datei im editor und den einzelnen MSG-Boxen.

FileRead, AusgabeVar, %datei%
MsgBox, test%AusgabeVar%|



FileReadLine, AusgabeVar, %datei%, Zeilennummer
File := FileOpen(datei, "r")
File.Position := 50
Pos := File.Position
MsgBox, %Pos%
Zeichenkette := File.Read("50")
MsgBox, %Zeichenkette%


Dateigroesse := File.Length
MsgBox, %Dateigroesse%

Re: FileRead ließt nicht die ganze datei oder zeigt sie nicht an

Posted: 09 Aug 2019, 03:23
by Rohwedder
Hallo,
vermute mal deine aktuelle Standardcodierung passt nicht.
Siehe: https://ahkde.github.io/docs/commands/FileEncoding.htm

Re: FileRead ließt nicht die ganze datei oder zeigt sie nicht an

Posted: 09 Aug 2019, 04:46
by Ragnar
Du versuchst, eine binäre Datei einzulesen. Wenn du den Inhalt dieser Datei ausgibst (z. B. via MsgBox), wird nur der Inhalt bis zur ersten binären Null angezeigt, aber intern ist der Inhalt noch vollständig verfügbar. Um mit solchen Dateien zu arbeiten, erfordert es fortgeschrittenes Wissen. Siehe Lesen von Binärdaten.

Re: FileRead ließt nicht die ganze datei oder zeigt sie nicht an

Posted: 09 Aug 2019, 04:50
by just me
Moin,

was da im Editor angezeigt wird sieht stark nach einer Datei mit binärem Inhalt aus. Wenn Du binäre Daten mit FileRead oder File.Read() einliest und dann mit AHK-Befehlen für Texte/Zeichenketten ausgeben willst, wird der Inhalt bei dem ersten NULL-Byte (ANSI) oder bei den ersten zwei NULL-Bytes (Unicode) auf einer Zeichenposition abgeschnitten, und der Rest ist auch nicht gerade aussagekräftig. Was willst Du mit der Datei denn machen?

Edit: Zu spät! Hallo Ragnar!

Re: FileRead ließt nicht die ganze datei oder zeigt sie nicht an

Posted: 13 Aug 2019, 23:55
by Folllast
Ich hab es jetzt so umgesetzt, dass die Datei in die Variable gelesen wird, dort jedes Zeichen ausgewertet wird, bis das gewünsche Muster gefunden wird.
Die Sachen, die ich Suche, sind dort zum Glück im Klartext gespeichert, zwischen den tausenden wirren Zeichen verbergen sich die gewünschten Wörter in "Menschensprache".