![]() |
StringList -> StringReplace "verschluckt" letzt
Hallo Leute,
zum Einlesen einer csv-Datei in meine Datenbank benutze ich zwei Stringlisten:
Delphi-Quellcode:
Wenn ich mir die Strings der Masterlist ansehe (showMessage) dann stimmt noch alles, sehe ich mir den letzten String in der Detailslist an, dann fehlt der letzte Buchstabe des String. Wenn hinter dem letzten Buchstaben, also vor dem Zeilenende, ein Leerzeichen steht, dann fehlt der letzte Buchstabe nicht. Ich hab keine Ahnung, woran das liegen kann?!? Ich hoffe ihr könnt mir da weiterhelfen und habt evtl. einen Tip, wie ich das Problem lösen kann?!?!.... var masterslist : TStringList; detailslist : TStringList; index : Integer; begin masterslist := TStringList.Create; detailslist := TStringList.Create; try detailslist.Delimiter := ';'; masterslist.LoadFromFile(Edit_DATEI.Text); for index := 1 to Pred (masterslist.Count) do begin detailslist.Clear; detailslist.DelimitedText := '"' + StringReplace(masterslist.Strings[index],';','";"',[rfReplaceAll]); //ShowMessage(masterslist.Strings[index]); //ShowMessage(detailslist.Strings[3]); .... Danke schonmal! Jana |
Re: StringList -> StringReplace "verschluckt" l
Ist den ".DelimitedText" die richtige eigenschaft?
Bräuchtest du nicht ".Text"? Ist aber nur geraten, da ich mich noch nicht so mit ".DelimitedText" auseinandergesetzt habe. MfG xZise |
Re: StringList -> StringReplace "verschluckt" l
Müsst es nicht heissen:
Delphi-Quellcode:
und anstelle von
for index := 0 to masterslist.Count -1 do
Delphi-Quellcode:
würde ich mal dies probieren:
detailslist.Delimiter := ';';
Delphi-Quellcode:
masterslist.Delimiter := ';';
|
Re: StringList -> StringReplace "verschluckt" l
Zitat:
ich möchte die einzelnen Einträge einer Zeile Eintrag A;Eintrag B;Eintrag C Eintrag A;Eintrag B;Eintrag C in jeweils eine Spalte (A,B,C) der DB-Tabelle schreiben. Die "Spalten" sind mit ' ; ' getrennt und mit DelimitedText kann ich mit dem Delimiter angeben, wonach die Spalten getrennt werden sollen. Die Eigenschaft TEXT trennt glaub ich nach Zeilenumbruch, bin mir nicht ganz sicher. In meinem Fall fehlt nun allerdings immer der Buchstabe C ... :( |
Re: StringList -> StringReplace "verschluckt" l
Ein Leerzeichen immer auch ein Trenner. Ab D7 kann man das durch Setzen der Eigenschaft .StrictDelimiter auf True unterbinden.
|
Re: StringList -> StringReplace "verschluckt" l
Hallo RavenIV,
Zitat:
Zitat:
|
Re: StringList -> StringReplace "verschluckt" l
Zitat:
Merkwürdig ist ja, das gerade MIT dem Leerzeichen am Ende der letzte Buchstabe da ist. Nur wenn keins am Ende steht, fehlt das letzte Zeichen :( |
Re: StringList -> StringReplace "verschluckt" l
Welche Delphiversion hast du?
|
Re: StringList -> StringReplace "verschluckt" l
Schau dir mal
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:24 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 by Thomas Breitkreuz