[VB6] Datensätze aus einer Textdatei splitten, Felder enthalten auch CrLf

02/09/2010 - 09:43 von Wilfried Dietrich | Report spam
Hallo,

ich muss Datensàtze aus einer Textdatei importieren.
Diese DS sind durch ein CrLf am Ende getrennt, nur leider
enthalten auch einige Textfelder ein oder mehrere CrLf.
Alle Textfelder besitzen allerdings Textbegrenzungszeichen ".

Im Moment lese ich das kpl. File in einen String ein und
untersuche dann in einer Schleife (1. bis letztes Zeichen), ob
sich ein gefundenes CrLf innerhalb der Textbegrenzungszeichen
(ungerade Anzahl) oder außerhalb der Textbegrenzungszeichen
(0 oder gerade Anzahl) befindet.
Das funktioniert auch soweit, ich kann die DS damit splitten und
in ein Array schreiben, nur das dauert ,bei größeren Datenmengen,
etwas zulang.

Hat einer von Euch eine schnellere (performantere) Lösung?
Eine Idee, einen Link oder am liebsten etwas Code?

Schon mal Danke.
Gruß
Wilfried
 

Lesen sie die antworten

#1 Thorsten Albers
02/09/2010 - 12:41 | Warnen spam
Wilfried Dietrich schrieb im Beitrag
<i5nkke$k37$...
Im Moment lese ich das kpl. File in einen String ein und
untersuche dann in einer Schleife (1. bis letztes Zeichen), ob
sich ein gefundenes CrLf innerhalb der Textbegrenzungszeichen
(ungerade Anzahl) oder außerhalb der Textbegrenzungszeichen
(0 oder gerade Anzahl) befindet.
Das funktioniert auch soweit, ich kann die DS damit splitten und
in ein Array schreiben, nur das dauert ,bei größeren Datenmengen,
etwas zulang.

Hat einer von Euch eine schnellere (performantere) Lösung?
Eine Idee, einen Link oder am liebsten etwas Code?



Anders, als Du es machst, ist die Lösung der Aufgabe nicht möglich, es sei
denn, man nimmt einen Befehl wie Split(), der das 'Zerlegen' intern in
einer Schleife erledigt - aber auch dieser macht intern natürlich nichts
anderes.
Wenn das ganze langsam ist, liegt es also nicht an der Methode an sich,
sondern entweder an dem Umfang der Daten oder an der Art, wie Du die
Schleifenarbeit realisiert hast. Das beste wàre daher, >Du< postest hier
'mal ein bischen von >Deinem< Code, damit wir sehen können, wo man
optimieren kann.

Thorsten Albers

albers (a) uni-freiburg.de

Ähnliche fragen