Dateien einlesen

24. Oktober 2005 10:35

Hallo,

nee Woche, neue Probleme :oops:

Wie stell ich es denn am besten an, eine Datei einzulesen, dessen Zeilenlänge 1090 beträgt? Bis 1024 wäre es ja per File.Read(String) keine Problem, aber so?

Hat da einer ne Idee?

Danek & Gruss, Otschko

24. Oktober 2005 11:15

Gibt es in der Datei einen festen Punkt, an dem du den String auf zwei Variablen aufteilen kannst?
Nächster Tipp: Binär einlesen MyFile.TEXTMODE := FALSE;

24. Oktober 2005 11:21

Hi Timo,

ich habe keinen Anhaltspunkt, um das zu teilen, der Datensatz is exakt 1090 Zeichen lang. Das passt leider in keine Textvariable :-(

Mit dem Binär Einlesen das gleiche Ergebnis.. Text zu lang.

gruss,Otschko

24. Oktober 2005 12:25

Otschko hat geschrieben:der Datensatz is exakt 1090 Zeichen lang. Das passt leider in keine Textvariable


Probiers doch mal mit einem Dataport mit mehreren Textvariablen, u.U. Indiziert?

TextVar[1]TextVar[2]TextVar[3]...

Nachteil: das Auslesen der einzelnen Datenfelder aus diesem Textarray mußt du dann selbst programmieren (COPYSTR, EVALUATE,...).

MfG
Josef Metz

24. Oktober 2005 16:19

Hallo Josef,

versteh jetzt nicht ganz, wie du das meinst..!?
Was ich jetz mal probiert habe, einen Dataport über eine Temporäre Tabelle, in denen die Felder entsprechend lang wie die Felder des Datensatzes sind. (zB Nr 20, Name 50 usw...)
Dieser Dataport arbeitet ohne Trennzeichen, bleibt aber immer hängen bzw. der Client hängt sich auf.

Er müsste aber doch 20 Zeichen einlesen und das dann dem Feld "Nr" zuweisen, oder?

Ansonsten weiss ich jetzt echt nich weiter, was ich noch machen soll.

Die angehängten Bilder sind jetz Fehlermeldungen von der Funktion per File.READ.

Gruss,Otschko
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

24. Oktober 2005 17:31

Hallo,

probier doch mal den angehängten Dataport mit der angehängten Testdatei.

Vielleicht wird dann klarer was ich meinte.

MfG
Josef Metz
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

25. Oktober 2005 01:20

müsste gehen, wenn Du die Datei als Stream öffnest und dann mit den BigText-Funktionen in einzelne Abschnitte teilst, also 50 Zeichen Name, dann 30 Zeichen Ort und so weiter, je nach Struktur.....

25. Oktober 2005 08:41

Hallo Josef,

alles klar, das rockt ;-) !
@Michael: Mit dem Stream das kam mir auch noch in den Sinn, habe ich aber so auch noch nicht gemacht. Wär aber vom Handling her besser als immer den Dataport starten zu müssen, könnte man dann halt flexibel mit Parametern starten...




Danke && Gruss, otschko

25. Oktober 2005 12:12

genauso muss ich dass nämlich auch machen, wenn eine BigTextvariable über den XML-Port eingelesen wird (z.B. Kunden-Bemerkungen). die muss ich dann ja auch auf Zeilen zu maximal 80 Zeichen trennen...