AnsiString dateiname; if (odlg_open -> Execute()) { dateiname = (odlg_open -> FileName); TStringList *list = new TStringList(); list -> Delimiter = ';'; list -> LoadFromFile(dateiname); for (int y = 0; y < list -> Count; y++) { sgrid_einlesen -> Rows[y] -> DelimitedText = list -> Strings[y]; } delete list; }
Eigentlich sollte bei dem Programm die Daten aus einer csv Datei in ein StringGrid eingetragen werden. Leider klappt das nur mit dem Trennzeichen Komma, ich brauch aber das Trennzeichen Semikolon! Was mache ich falsch? Brauche dringend Hilfe .... ich verzweifle!
Kann es sein, dass du für das String-Grid auch noch einen Delimiter angeben musst? Schließlich hast du (zumindest in deinem Code-Schnipsel) nur den Delimiter für die TStringList festgelegt (list->Delimiter = ';').
"sgrid_einlesen" ist ja wohl dein TStringGrid?? Möglicherweise gibt es ja eine Eigenschaft sgrid_einlesen->Rows->Delimiter z.B. (wenn sgrid_einlesen->Rows vom Typ TStringList ist), die du erst korrekt setzen musst (';').
list->Strings[y] ist ja vom Typ Ansistring - die Trennzeichen-Information wird da nicht mit an TStringGrid->Rows[y] übergeben. Wie soll TStringGrid also den AnsiString "list->Strings[y]" zerteilen, wenn du das Trennzeichen nirgendwo explizit angibst? Komma (',') ist vielleicht die Voreinstellung.Dieser Post wurde am 18.09.2004 um 21:42 Uhr von GateKeeper editiert.