![]() |
Fehlerhafte Textdatei
Bevor ich mein Problem schildere möchte ich allen Usern ein großes Lob aussprechen :thumb:
Zu meinem Problem Ich bekomme Textdateien die Unterschiedlich groß sind und einige Zeilen haben am Zeilenanfang dieses Zeichen ab dieser Position wird die Datei nicht weiter ausgelesen. Auszug aus der Datei %_N_16099_11_D155_E1_MPF ;$PATH=/_N_WKS_DIR/_N_EASYSTEP_WPD G0 G90 Z1540 M5 M35 M30 %_N_16099_11_D181_E1_MPF ;$PATH=/_N_WKS_DIR/_N_EASYSTEP_WPD M4 M24 E_T(18) Die Function sieht so aus
Delphi-Quellcode:
wie kann ich es anstellen das diese Zeichen gelöscht werden und bis zum Dateiende gelesen wird.
function TextRep(text : String): integer;
var TextLesen : array[1..10000] of string; var i, z : integer; begin z:=0; AssignFile(f,form1.FileListBox1.FileName); reset(f); while not eof(f) do begin Readln(f,TextLesen[z]); inc (z); end; closefile(f); AssignFile(f,'C:\test.MPF'); ReWrite(f); for i := 0 to z do begin writeLn(f,TextLesen[i]); end; closefile(f); end; Winkelmesser [edit=SirThornberry]Delphi-Tags ergänzt - Mfg, SirThornberry[/edit] |
Re: Fehlerhafte Textdatei
Versuch mal die datei als binäre datei, statt Textdatei einzulesen.
|
Re: Fehlerhafte Textdatei
Hallo mkinzler
Habe es bis jetzt nur als Textdatei versucht muss mal sehen ob ich es binäre hinbekomme Dank in Voraus |
Re: Fehlerhafte Textdatei
Readln und Array of String verträgt sich nicht auf die Weise wie du es verwendest. Ich denke du meinst eher
Delphi-Quellcode:
var TextLesen : array[1..10000] of char;
|
Re: Fehlerhafte Textdatei
Hallo SirThornberry
var TextLesen : array[1..10000] of char; bringt eine Fehlermeldung muss ich noch was ändern Winkelmesser |
Re: Fehlerhafte Textdatei
Zitat:
es handelt sich nicht um ein dynamisches array of string sondern um ein statisches array[1..10000} of string und bei mir verträgt es sich ausgezeichnet mit ReadLn. @winkelmesser dein array ist definiert als TextLesen:array[1..10000] of string, also solltest du nicht versuchen in TextLesen[0] zu schreiben
Delphi-Quellcode:
begin
z:=0; AssignFile(f,form1.FileListBox1.FileName); reset(f); while not eof(f) do begin inc (z); Readln(f,TextLesen[z]); //inc (z); gehört vor das ReadLn end; closefile(f); AssignFile(f,'C:\test.MPF'); ReWrite(f); // for i := 0 to z do sollte bei 1 beginnen for i := 1 to z do begin writeLn(f,TextLesen[i]); end; closefile(f); end |
Re: Fehlerhafte Textdatei
Hallo Amateurprofi
array[1..10000] of tring; verträgt sich auch bei mir aber das ist nicht mein Problem ich kann nicht die Zeile mit diesen Zeichen Lesen ich nehme an es bedeutet Dateiende Was ich brauche ist Die Ganze Datei Zeilenweise einzulesen und diese zeichen zu Löschen Winkelmesser |
Re: Fehlerhafte Textdatei
Bin ich etwas vewundert das es so geht, da die Länge des String nirgends gesetzt wird...
Hast du es schon mit TFileStream probiert? |
Re: Fehlerhafte Textdatei
Hast du es schon mit TFileStream probiert?
Nein bin noch am suchen komme nicht ganz klar damit :wall: |
DP-Maintenance
Dieses Thema wurde von "JasonDX" von "Freeware" nach "Sonstige Fragen zu Delphi" verschoben.
Gehoert nicht nach Freeware ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz