Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: FileStream: Falsche Ausgabe unter D2010

  Alt 19. Nov 2009, 22:02
Zitat von Uwe Raabe:
Weil Unicode-Chars 2 Byte groß sind, TStream.Size aber Bytes angibt.

Delphi-Quellcode:
  
setlength(s,size div 2);
readbuffer(s[1],size div 2);
Gelesen werden müssen trotzdem noch alle Bytes

Bzw wenn es ne ASCII/ANSI Datei ist würde ich folgendes empfehlen:

Delphi-Quellcode:
var s: AnsiString;
begin
  with TFilestream.Create('c:\test.txt',fmOpenRead) do
    try
      SetLength(s,Size);
      ReadBuffer(s[1],Size);
      ShowMessage(s); // Um die Warnung wegzubekommen: ShowMessage(String(s))
    finally
      free;
    end;
end;
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat