Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   stringgrid als Textdatei speichern (https://www.delphipraxis.net/165172-stringgrid-als-textdatei-speichern.html)

Hartfrid Krause 16. Dez 2011 18:44


stringgrid als Textdatei speichern
 
Noch kappt die Speicherung nur über ein memo-feld; es muss allerdings eine direkte Möglichkeit geben.
Bei mir sieht es wie folgt aus:

Delphi-Quellcode:
procedure tform13.SpeedButton2Click(Sender: TObject);
var i:integer;
s:string;
begin
 altfilename:=extractfilepath(application.ExeName); //altes dir funktioniert
 savedialog1.execute;
 memo1.lines.clear;
  with stringgrid1 do
  begin
   for i := 0 to rowcount-1 do
   begin
    s := Format('%-20s %-16s %-10s %-10s', [Cells[0,i], Cells[1,i], Cells[2,i], Cells[3,i]]);
    memo1.lines.Add(s);
   end;
  end;
 memo1.lines.SaveToFile(savedialog1.Filename +'.txt');
 savedialog1.Free;
 chdir(altfilename);//wieder zurück;
end;
Ich möchte gerne, dass der Speicherprt frei gewählt werden kann

himitsu 16. Dez 2011 19:02

AW: stringgrid als Textdatei speichern
 
Was ist Memo.Lines für ein Typ?

Und nun schau mal was ganz unten bei Delphi-Referenz durchsuchenTStrings in der OH steht.



Aber warum gibs du den SaveDialog frei?
Du hast ihn schließlich auch nicht selber erstellt.
Tipp: Versuche mal mehrmals hintereinander zu speichern. (mehrmals auf deinen SpeedButton drücken)

Und ChDir stimmt wohl auch nicht, denn was will ChDir haben?
Genau, ein Verzeichnis und keine Datei.


Tipp: Kennst du die Code-Tags?
[DELPHI]...[/DELPHI]

p80286 17. Dez 2011 08:02

AW: stringgrid als Textdatei speichern
 
Wie wäre es statt des TMemo eine TStringlist zu benutzen?
Und irgendwie steige ich durch die Verwendung des SaveDialog nicht durch.

Gruß
K-H

Bummi 17. Dez 2011 08:54

AW: stringgrid als Textdatei speichern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi-Quellcode:
 If SaveDialog.Execute then SaveStringGrid(StringGrid1,SaveDialog.FileName);
Load und Save im Anhang

Hartfrid Krause 18. Dez 2011 18:14

AW: stringgrid als Textdatei speichern
 
Die Daten sind ja in einer stringgrid angezeigt; diese Daten will ich abspeichern,.
Das savedialoge execute ist nur dazu da, einen frei wählbaren Namen uind ein frei wählbares directory zu wählen.
mit dem Hinweis "TStrings in der OH steht"kann ich wenig anfangen

Luckie 18. Dez 2011 18:25

AW: stringgrid als Textdatei speichern
 
Da liegt aber einiges im Argen mit deinem Save-Dialog:
Delphi-Quellcode:
if SaveDialog1.execute then
begin

end;
Und kein Free!

Klaus01 18. Dez 2011 18:26

AW: stringgrid als Textdatei speichern
 
Hallo,

es könnte auch so gehen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i : Word;
  fileStream : TFileStream;
begin
  if saveDialog1.execute then
    begin
      fileStream := TFileStream.Create(saveDialog1.FileName,fmCreate);
      try
        for i:=0 to stringGrid1.RowCount -1 do
          begin
            stringGrid1.Rows[i].SaveToStream(fileStream);
          end;
      finally
        fileStream.Free;
      end;
    end;
end;
Grüße
Klaus

Bummi 18. Dez 2011 18:49

AW: stringgrid als Textdatei speichern
 
@Klaus01

wie lädst Du das ganze wieder ?

himitsu 18. Dez 2011 19:01

AW: stringgrid als Textdatei speichern
 
Wer hat was von Laden gesagt?
Dort oben steht nur speichern. :stupid:


In Bezug auf Textdatei kann man auch JSON, XML, CSV und Co. erwähnen.

Coffeecoder 18. Dez 2011 19:15

AW: stringgrid als Textdatei speichern
 
Hi,
So kannst du den Inhalt auch abspeichern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:30 Uhr.
Seite 1 von 2  1 2      

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