Entwickler-Ecke
Dateizugriff - Datei lesen schlägt fehl
skriiva - Sa 17.04.10 19:31
Titel: Datei lesen schlägt fehl
Hallo zusammen !
Ich greife auf eine Datei des Typ File of char zu. Diese wird erkannt jedoch kommen beim Lesen die Probleme. Die ausgegeben Zeichen sind einfach nur Quadrate. Ich weiß leider nicht was das für Ursachen haben könnte. In der Datei stehen 3 Wörter.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| CharFile = File of char;
var data:CharFile;
procedure ReadData(var text:String; var source:CharFile); var dummy:Char; begin reset(source); text:='';
while not EOF(source) do begin read(source, dummy); text:=text + dummy; end; end; |
Gausi - Sa 17.04.10 19:57
Verwendest du Delphi 2009 oder 2010? Da ist ein Char nämlich zwei Byte groß. Wenn das eine "normale" Ansii-Textdatei ist, werden dadurch dann je zwei Zeichen zu einem (meist) ostasiatischen Zeichen verwurstet, das dann als Quadrat angezeigt wird, wenn die Schriften nicht installiert sind.
Arbeite lieber mit Streams. Die sind am Anfang zwar etwas komplizierter, aber weitaus flexibler. ;-)
Ob hier die Ersetzung Char durch Ansichar was bringt, weiß ich nicht. Kann aber auch gut sein.
skriiva - Sa 17.04.10 20:21
Wow Super ! Genau das war das Problem. Ich habe mich informiert und Char durch AnsiChar ersetzt und die Typcasting mit AnsiChar(). Danke nochmal !
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!