![]() |
Fehler bei Zugriff auf Textdatei
Hallo,
ich habe folgendes Delphi Programm geschrieben (ich denke, außer den Datei-Befehlen ist der restliche Code erstmal irrelevant)
Delphi-Quellcode:
program Wordcounter;
{$APPTYPE CONSOLE} uses SysUtils, Windows; var t,t2: textfile; s1,s2,wort: string; i: integer; begin AssignFile(t,'text.txt'); Reset(t); // HIER KOMMT DER FEHLER while not eof(t) do begin readln(t,s1); // Text aus Datei in String einlesen CharToOem(PChar(s1),PChar(s1)); end; CloseFile(t); for i:=1 to length(s1) do if (ord(s1[i])<32) or (ord(s1[i])>32) and (ord(s1[i])<64) or (ord(s1[i])>90) and (ord(s1[i])<97) or (ord(s1[i])>122) and (ord(s1[i])<129) or (ord(s1[i])<>132) or (ord(s1[i])<>148) or (ord(s1[i])<>225) then delete(s1,i,1); // Alle Zeichen außer Buchstaben und Leerzeichen rauslöschen s2:=''; while not length(s1)=0 do begin while s1=' ' do delete(s1,1,1); // Leerzeichen am Anfang des Strings löschen wort:=copy(s1,1,pos(' ',s1)); // 1. Wort des Strings in Wort-String kopieren delete(s1,1,pos(' ',s1)); // ... und aus String löschen while pos(' ',wort)<>0 do delete(wort,pos(' ',wort),1); if pos(wort,s2)=0 then s2:=s2+wort+' '; end; AssignFile(t2,'Ergebnis.txt'); append(t2); write(t2,s2); CloseFile(t2); readln; end. Will ich es kompilieren, gelingt dies nicht aufgrund eines Fehlers in der Zeile mit dem
Delphi-Quellcode:
zu Beginn, da angeblich die Datei nicht gefunden wurde.
Reset(t);
So einen Fehler habe ich noch nie gehabt, aber kann es vielleicht IRGENDWIE damit zusammenhängen, dass ich Delphi in einem Virtuellen PC betreibe (geht nicht anders bei mir)? Mfg, gn7 |
Re: Fehler bei Zugriff auf Textdatei
Gib mal einen absoluten Pfad an
Z.B
Delphi-Quellcode:
AssignFile( t, ExtractFilePath( Application.Exename)+'test.txt');
|
Re: Fehler bei Zugriff auf Textdatei
Deine Programmzeile verstehe ich zwar nicht ganz, aber mit z.B: 'C:\text.txt' klappt es nicht, habe ich schon probiert... :(
|
Re: Fehler bei Zugriff auf Textdatei
Der Code liest den Namen der Exe (inkl. Pfad) aus: c:\Irgendwas\Programm.Exe
Extrahiert daraus den Pfad: c:\Irgendwas\ Und hängt den dateinamen der Textdatei wieder an: c:\Irgendwas\test.txt |
Re: Fehler bei Zugriff auf Textdatei
wenn ich diese Zeile einbaue, erkennt Delphi nicht den Bezeichner "Application" - brauche ich noch eine Unit dafür, die ich einzubinden habe?
|
Re: Fehler bei Zugriff auf Textdatei
Ach ist ein Konsolenprogramm dann ersetze Application.Exename mit ParamStr(0)
|
Re: Fehler bei Zugriff auf Textdatei
Zitat:
|
Re: Fehler bei Zugriff auf Textdatei
Existiert die Datei den schon?
wenn nicht benutz mal:
Delphi-Quellcode:
assign(t,'deinedate.txt');
rewrite(t); |
Re: Fehler bei Zugriff auf Textdatei
Zitat:
Und ich möchte die Datei nur lesen, deshalb "reset" |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 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