![]() |
";" als trennzeichen funktioniert nicht
Hallo Zusammen,
in meinem jetzigen Programm schreibe ich Datensätze aus einer CSV-Datei in ein Stringgrid. Leider liest er Die Datensätze nicht richtig ein aber beim schreiben trennt er sie richtig. Beim Laden: Anstatt die Einzelnen Strings Zu trennen schreibt er alle die in einer Line Stehen in eine Zelle des Stringgrids. Textdatei Inhalt: KundenNr.;Name;Vorname;Email;Key;Regestriert 1;Panse;Jim;wtf@lol.de;3455325675-3674366323-5437225667;0 Und die Beiden Prozeduren:
Delphi-Quellcode:
wäre nett, wenn ihr mir helfen könntet
//Speichern
procedure savegrid(StringGrid: TStringGrid; const FileName: TFileName); var csv : TStringList; i : Integer; begin csv := TstringList.create; csv.Delimiter:=';'; for i:=0 to StringGrid.RowCount -1 do begin StringGrid.Rows[i].Delimiter:=';'; csv.Add(StringReplace(StringGrid.Rows[i].CommaText,',',';',[rfReplaceAll])); end; csv.SaveToFile(FileName); csv.Free; end; //Laden procedure loadgrid(StringGrid: TStringGrid; const FileName: TFileName); var csv : TStringList; i : Integer; begin csv := TStringList.create; csv.loadfromfile('c:\DB\KundenDatenbank.csv'); stringGrid.rowCount := csv.count ; for i:=0 to csv.count -1 do begin StringGrid.Rows[i].Delimiter:=';'; StringGrid.Rows[i].Commatext:=csv[i]; end; csv.free; end; schonmal vielen Dank! Euer Manu |
Re: ";" als trennzeichen funktioniert nicht
Wenn du den Delimiter verwenden willst musst du auch .DelimitedText verwenden, denn .CommaText verwendet, wie der namen schon ahnen lässt, immer ein Komma.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:27 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