![]() |
Konsolenanwendung: TextFile
Hi
Ich habe jetzt ca. 2h Damit verbracht nach einer Lösung zu suchen, aber hab leider nichts gefunden das mir weiter hilft... Alles was ich will ist eine Datei Zeile für Zeile in eine StringList lesen... das ist mein Code der aber nicht funktioniert. d.h. in die While -Schlaufe kommt es gar nicht. Das Programm startet auf und schliesst wieder, keine Fehlermeldung nichts... //EDIT: Doch, wenn ichs in der Komandozeile starte dann erhalte ich eine EAccess Violation...
Delphi-Quellcode:
Allgemein gibt es leider sehr zu wenig Hilfestellung zu Delphi- Konsolenanwendungen. Macht ihr Konsolenanwendungen mit C++ oder wird das einfach selten gebraucht?
if FileExists(filepath) then
begin AssignFile(upi, filepath); Reset(upi); while not Eof(upi) do begin ReadLn(upi, line); s.Add(line); end; CloseFile(upi); writeln(s.Text); end; readln; Bin für jede Hilfe Dankbar. Grüsse aus der Schweiz... Cherry |
Re: Konsolenanwendung: TextFile
was hat'n eine Consolenanwendung mit der Hilfe zu tun?
die Hilfe ist für Delphi gemacht und mit Delphi kann man Cviele mögliche Anwendungstypen erstellen ... also meiner Meinung nach biete sie ausreichend Hilfestellungen, auch diesbezüglich. Aber mal einige Fragen: wo ist das Problem / was geht nicht. und warum nimmst du nicht LoadFromFile? die Stringlist hat schließlich eine Schöne Funktion zum Einlesen von Textdateien. [Edit] Wo (Zeile/Befehl) und welche Fehlermeldung kommt denn? |
Re: Konsolenanwendung: TextFile
LoadFromFile klingt gut... Probier ich gleich mal aus...
eben den Code habe ich ja gepostet... Das Programm startet auf und schliesst wieder... //Sollte aber eigentlich den eingelesenen Text der Datei ausgeben und keine EAccess violation! Weisst du was mit meinem Code nicht i.O ist? |
Re: Konsolenanwendung: TextFile
Moin, Moin,
wenn dieser Weg unbedingt gegangen werden soll, dann bitte mit einer minimalen Fehlerbehandlung, z.B.
Delphi-Quellcode:
Auf diesem Weg kann man natürlich auch einen Fehlercode auswerten ...
{$I-} reset(upi) { {$I+}
if IOResult=0 then while ... |
Re: Konsolenanwendung: TextFile
habe nun
Delphi-Quellcode:
ausprobiert! Funktioniert nicht!
s.LoadFromFile(filepath);
Folgende Fehlermeldung: Q:\DATEN\Projekte\UPI ENTRY Eraser>delupientry Exception EAccessViolation in Modul delupientry.exe bei 000102B8. Zugriffsverletzung bei Adresse 004102B8 in Modul 'delupientry.exe'. Lesen von Ad resse 00000000. |
Re: Konsolenanwendung: TextFile
Ist denn die StringListe überhaupt instanziiert?
|
Re: Konsolenanwendung: TextFile
Zitat:
Q:\DATEN\Projekte\UPI ENTRY Eraser>delupientry Exception EAccessViolation in Modul delupientry.exe bei 000102B8. Zugriffsverletzung bei Adresse 004102B8 in Modul 'delupientry.exe'. Lesen von Ad resse 00000000. Ist bei allen meinen Varianten immer dasselbe! |
Re: Konsolenanwendung: TextFile
Aber ein
Delphi-Quellcode:
hast Du drin?
s := TStringList.Create;
|
Re: Konsolenanwendung: TextFile
...lesen von 00000000000 >> da existiert irgendein Objekt nicht
dann ist der Fehler nicht im File I/O zu suchen |
Re: Konsolenanwendung: TextFile
:oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops:
War die fehlende Initialisierung... bitte nicht weitersagen... jetzt möchte ich aber den Text Ausgeben...
Delphi-Quellcode:
ist wohl nicht i.O, denn es erscheint kein Text
writeln(s.Text);
//EDIT: Habe beim Debuggen festgestellt, dass die While Schleife nicht durchlaufen wird... why this? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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