Hallo zusammen,
ich habe ein kleines Problem und zwar möchte ich wenn ich auf einen Button drücken, dass sich dort ein OpenDialog öfnnet und ich ein Textdokument in ein Memo einlesen kann. Es funktioniert eigentlich... Bis auf, dass ich nur Dokumente mit der Endung .txt ein
lesen kann. Außerdem soll er das Ganze zeilenweise einlesen und nicht buchstabenweise. Könnt ihr mir helfen?
Hier mein Quellcode
												| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 25:
 26:
 27:
 28:
 29:
 30:
 31:
 32:
 
 | procedure TData.LoadFromFile;var
 iFileHandle : Integer;
 iFileLength : Integer;
 iBytesRead  : Integer;
 Buffer      : PChar;
 i           : Integer;
 sTimeStamp  : string;
 begin
 if FU_ASTM_Sender.FrmASTM_Sender.OpenDialog1.Execute then
 begin
 try
 iFileHandle := SysUtils.FileOpen(FU_ASTM_Sender.FrmASTM_Sender.OpenDialog1.FileName, fmOpenRead);
 iFileLength := SysUtils.FileSeek(iFileHandle,0,2);
 FileSeek(iFileHandle,0,0);
 Buffer := PChar(System.AllocMem(iFileLength + 1));
 iBytesRead := SysUtils.FileRead(iFileHandle, Buffer^, iFileLength);
 sTimeStamp := FormatDateTime('YYYYMMDDHHNNSS',now);
 FU_ASTM_Sender.FrmASTM_Sender.ASTM.lines.Clear;
 FileClose(iFileHandle);
 for i := 0 to iBytesRead-1 do
 begin
 if i = 0 then
 FU_ASTM_Sender.FrmASTM_Sender.ASTM.lines.Add(StringReplace(Buffer[i],'#TS#',sTimeStamp,[rfIgnoreCase]))
 else
 FU_ASTM_Sender.FrmASTM_Sender.ASTM.lines.Add(Buffer[i]);
 end;
 finally
 FreeMem(Buffer);
 end;
 end;
 end;
 | 
		
	  
Moderiert von  Narses: Delphi-Tags hinzugefügtModeriert von
Narses: Delphi-Tags hinzugefügtModeriert von  Narses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mi 19.05.2010 um 23:31
Narses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mi 19.05.2010 um 23:31