AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TStringGrid -> Listen speichern

Ein Thema von Airblader · begonnen am 15. Jan 2005 · letzter Beitrag vom 15. Jan 2005
Antwort Antwort
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#1

TStringGrid -> Listen speichern

  Alt 15. Jan 2005, 12:52
Hi

Ich habe ein TStringGris (passender weise "Tabelle" genannt ) in der - wer hätts gedacht - Daten stehen.
Diese Daten will ich nun speichern, als eine Art csv-Datei (aber vorerst mal mit der Endung *.txt);

Ich habe natürlich Dateiname, Seperator und das StringGrid: Das alles wird der Funktion übergeben.

Ich stelle mir jetzt die Frage, wie ich das speichern soll.
Ich hätte es vielleicht so gemacht:

SaveToFile von Rows hilft mir nich viel, da ich es so brauche:

Zitat:
Data1;Data2;Data3;Data4;
Datab1;Datab2;Datab3;Datab4;
Datac1;Datac2;Datac3;Datac4;
...
Hätte jemand eine Idee wie ich das machen könnte?
Ich dachte mir so etwas:

Jede Reihe durchschleifen und von der Reihe jede Spalte zu einem String hinzufügen und diesen String per Writeln () schreiben

air
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: TStringGrid -> Listen speichern

  Alt 15. Jan 2005, 13:35
Ja, dann mache es doch so. Wie denn sonst ?

Delphi-Quellcode:
var d : textfile;

assign (d.'TEST.TXT');
rewrite (d);
writeln (d,Data1,';',Data2.....);
close (d);
Allerdings empfehle ich dir feste Feldlängen und nicht ein Trennzeichen. Das macht nur Ärger und bringt keinen Vorteil. Zumindest im professionellen Einsatz werden Trennzeichen mittlerweile äußerst selten verwendet, wenn überhaupt.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#3

Re: TStringGrid -> Listen speichern

  Alt 15. Jan 2005, 13:48
Zitat:
Ja, dann mache es doch so. Wie denn sonst ?
Ich habe die Erfahrung gemacht, dass es meistens irgendwie leichter geht

Edit2:
ups, war meienrseits
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#4

Re: TStringGrid -> Listen speichern

  Alt 15. Jan 2005, 14:00
such mal nach explode und implode hier im forum!
  Mit Zitat antworten Zitat
Benutzerbild von Airblader
Airblader

Registriert seit: 29. Okt 2004
Ort: Geislingen an der Steige
742 Beiträge
 
#5

Re: TStringGrid -> Listen speichern

  Alt 15. Jan 2005, 14:05
Ok, es funktioniert nun

Ich hängs trotzdem mal mit an:

Delphi-Quellcode:
procedure TForm1.SaveSG(FN: TFileName; FieldSeperator: Char; SG: TStringGrid);
var
        i,j: integer; // Zähler
        PFile: textfile; // Datei
        str: string; // Einzutragender string
begin
        AssignFile(PFile, FN);
        Rewrite(PFile); // Öffnen

        // Jetzt wird jede Zeile und jedes Feld durchgeschliffen
        for i:=1 to SG.RowCount do
        begin
                for j:=0 to high(Fields) do
                begin
                        if j <> 0 then
                                str := str + ';' + SG.Cells[j,i]
                        else
                                str := SG.Cells[j,i];
                end;
                str := str + ';';

                if SG.Cells[0,i] <> 'then
                begin
                        Writeln(PFile, str);
                end;
        end;

        CloseFile(PFile);
end;
Fields ist ein array of string, darin werden die Namen der Felder festgelegt (da ich diese später ändern muss)

air
Ingo Bürk
Es nimmt der Augenblick, was Jahre geben.

Johann Wolfgang von Goethe
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz