Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   TTextStream - Textdateien einlesen (https://www.delphipraxis.net/151481-ttextstream-textdateien-einlesen.html)

himitsu 18. Okt 2010 13:51

AW: TTextStream - Textdateien einlesen
 
Zitat:

Zitat von BoolString (Beitrag 1056281)
Ganz klar ist mir allerdings noch nicht was intern mit deinem fIndex passiert. Ich habe diese Variable mal als Property ActualRow in tTextStream nach außen gelegt:
Delphi-Quellcode:
Property ActualRow: Integer Read fIndex Write fIndex;

FIndex ist nur ein interner Index, welcher eigentlich extern nix zu suchen hat.
Ich lese die Datei ja blockweise ein, die Zeilen im aktuellen Block werden über FLines indiziert.
FIndex gibt nun an, wieviel von diesem Block schon eingelesen wurde, bzw. an welcher Stelle (Index) man sich dort grade befindet und ob bei einem ReadLine nun noch eine Zeile aus diesem Puffer genommen werden kann, oder ob ein neues Stück geladen+geparst werden muß.

Das mit dem Quote-Zeichen sollte kein Problem sein.

Die Anzahl der Trennzeichen sollte egal sein.
Über das enthaltene TRIM werden mehrere nachfolgene Trennzeichen zusammengefasst.
Ich könnte eventuell aber eine Art StrictDelemiter einführen, wo dann immer nach jedem Leer-/Trennzeichen geteilt und nichts zusammengefaßt wird.

Dieses .ActualRow hat mich noch auf die Idee gebracht, daß man auch noch die Spalte mitzählen könnte, wenn die Zeilen "Value"-weise ausgelesen werden.

Na mal sehn, was sich noch so machen läßt.

[add]
aktuelle Testversion siehe Beitrag #1

Moony 4. Mär 2011 14:00

AW: TTextStream - Textdateien einlesen
 
Hallo,

ich habe mir mal deine Klasse runtergeladen und unter Windows XP funktioniert sie. Jetzt habe ich versucht meine Applikation auf einem Windows7 32Bit System zu starten und er kommt an der Stelle zu scheitern, wenn ich versuche den Textstream zu erstellen. Ich rufe folgendes beim Initialisieren auf:

Delphi-Quellcode:
var myFile : TTextStream;
...
myFile := TTextStream.Create(ChangeFileExt(Application.Exename, '.lng'), saRead);
try
  ...
finally
  myFile.Free;
end:
Hoffe auf baldige Hilfe!!!

Danke & Gruß, Moony

himitsu 4. Mär 2011 14:22

AW: TTextStream - Textdateien einlesen
 
Gut, dann erstmal ganz allgemein gefragt:

Wo liegt eine EXE und sicher daß dein Programm dort über ausreichende Zugriffsrechte verfügt?

Moony 4. Mär 2011 14:24

AW: TTextStream - Textdateien einlesen
 
Die Exe liegt in einem Ordner auf dem Desktop. Für diesen User ist bekanntlich in dem Userordner Schreibzugriff drauf.

himitsu 4. Mär 2011 14:39

AW: TTextStream - Textdateien einlesen
 
Gut, bei Win7 war's halt naheliegend, daß es daran liegen könnte, wenn es unter XP noch geht. :stupid:

Hmmm, wie heißt denn die Fehlermeldung und kannst du zufällig die Zeile nennen, in welcher es knallt?

Eigentlich wäre es sehr ungewöhnlich, wenn es genau in dieser Zeile knallt.
Delphi-Quellcode:
myFile := TTextStream.Create(ChangeFileExt(Application.Exename, '.lng'), saRead);
.

Ich glaub die Debuginfos hatte ich zu diesen Units nicht abgestellt, weswegen ich eher glauben würde der Debugger sollte weiter reingehn. :gruebel:
Notfalls mal einen Haltepunkt auf diese Zeile, dann Schritt für Schritt mit F7 weitergehn und die Zeile merken, welche aktiv war, bevor es knallte.

Moony 4. Mär 2011 14:46

AW: TTextStream - Textdateien einlesen
 
Nee, es kracht genau dort. Leider kann ich nicht debuggen, weil ich auf WinXp entwickel und die Applikation auf einem Win7 laufen soll.

Ich habe versucht mir Messages und ein Tracefile zu schreiben. Er ist bis zu der Create-Zeile mit den Messages gekommen und danach kam schon die Meldung dass die Funktion mit einer Exception beendet wurde.

Moony 7. Mär 2011 07:37

AW: TTextStream - Textdateien einlesen
 
Guten Morgen,

hmm, keine weitere Hilfe oder Idee zur Hand???

Gruß, Moony

himitsu 7. Mär 2011 07:50

AW: TTextStream - Textdateien einlesen
 
Tschuldschung.

Kann es zur Zeit schlecht testen/debuggen,
abgesehn davon, daß ich die letzten Tage flach lag und fast keinen klaren Gedanken fassen konnte. :vernupft:

Moony 7. Mär 2011 09:37

AW: TTextStream - Textdateien einlesen
 
Kein Problem....Gesundheit geht vor.

Debuggen kann ich leider auch nicht, sonst hätte ich das schon gemacht.
Die Frage wäre dann nur wie kommen wir dem Problem auf die Schliche?

Gruß, Moony

Sir Rufo 7. Mär 2011 10:36

AW: TTextStream - Textdateien einlesen
 
Zitat:

Zitat von Moony (Beitrag 1086395)
Kein Problem....Gesundheit geht vor.

Debuggen kann ich leider auch nicht, sonst hätte ich das schon gemacht.
Die Frage wäre dann nur wie kommen wir dem Problem auf die Schliche?

Gruß, Moony

Debugger defekt oder nicht mit dem Debugger vertraut?


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:28 Uhr.
Seite 4 von 5   « Erste     234 5      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz