AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stringgrid speichern als textdatei?

Ein Thema von simon19881 · begonnen am 19. Feb 2008 · letzter Beitrag vom 20. Feb 2008
Antwort Antwort
simon19881

Registriert seit: 18. Dez 2007
Ort: Frankfurt (Oder)
12 Beiträge
 
Delphi 7 Personal
 
#1

Stringgrid speichern als textdatei?

  Alt 19. Feb 2008, 16:35
Hallo leute,
ich möchte ein Stringgrid als textdatei (.txt) speichern und laden können.
Bin noch neu also haltet es bitte einfach ^^ Bitte komplette lösungswege ganz gerade heraus ^^
Bei der Listbox ging das mit SaveToFile und LoadFromFile wie gehts hier?
MfG Simon19881
be water my friend ^^
  Mit Zitat antworten Zitat
Hansa

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

Re: Stringgrid speichern als textdatei?

  Alt 19. Feb 2008, 16:40
hier dürfte was passendes zu finden sein :

http://www.swissdelphicenter.ch/de/t...ent=Stringgrid
Gruß
Hansa
  Mit Zitat antworten Zitat
simon19881

Registriert seit: 18. Dez 2007
Ort: Frankfurt (Oder)
12 Beiträge
 
Delphi 7 Personal
 
#3

Re: Stringgrid speichern als textdatei?

  Alt 19. Feb 2008, 17:13
Kannst du mir mal erklären warum das so ist ?

Delphi-Quellcode:
procedure SaveStringGrid(StringGrid: TStringGrid; const FileName: TFileName);
var
  f: TextFile;
  i, k: Integer;
begin
  AssignFile(f, FileName);
  Rewrite(f);
  with StringGrid do
  begin
    // Write number of Columns/Rows
    Writeln(f, ColCount);
    Writeln(f, RowCount);
    // loop through cells
    for i := 0 to ColCount - 1 do
      for k := 0 to RowCount - 1 do
        Writeln(F, Cells[i, k]);
  end;
  CloseFile(F);
end;

// Load a TStringGrid from a file

procedure LoadStringGrid(StringGrid: TStringGrid; const FileName: TFileName);
var
  f: TextFile;
  iTmp, i, k: Integer;
  strTemp: String;
begin
  AssignFile(f, FileName);
  Reset(f);
  with StringGrid do
  begin
    // Get number of columns
    Readln(f, iTmp);
    ColCount := iTmp;
    // Get number of rows
    Readln(f, iTmp);
    RowCount := iTmp;
    // loop through cells & fill in values
    for i := 0 to ColCount - 1 do
      for k := 0 to RowCount - 1 do
      begin
        Readln(f, strTemp);
        Cells[i, k] := strTemp;
      end;
  end;
  CloseFile(f);
end;


// Save StringGrid1 to 'c:\temp.txt':

procedure TForm1.Button1Click(Sender: TObject);
begin
  SaveStringGrid(StringGrid1, 'c:\temp.txt');
end;

// Load StringGrid1 from 'c:\temp.txt':

procedure TForm1.Button2Click(Sender: TObject);
begin
  LoadStringGrid(StringGrid1, 'c:\temp.txt');
end;
be water my friend ^^
  Mit Zitat antworten Zitat
Hansa

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

Re: Stringgrid speichern als textdatei?

  Alt 19. Feb 2008, 23:32
Zitat von simon19881:
Kannst du mir mal erklären warum das so ist ?
Was erklären ? Das ist so simpel. Für Nachhilfefragen bitte neu fragen.
Gruß
Hansa
  Mit Zitat antworten Zitat
bluesbear

Registriert seit: 14. Dez 2005
Ort: Hahnstätten
355 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: Stringgrid speichern als textdatei?

  Alt 20. Feb 2008, 06:29
Zitat von simon19881:
Kannst du mir mal erklären warum das so ist ?
Öhm - was soll wie sein? Da wird beim speichern jede Zelle in einer bestimmten Reihenfolge in eine eigene Zeile der Textdatei geschrieben. Und beim Lesen werden die Zellen in der selben Reihenfolge mit den Zeilen aus der Textdatei gefüllt. Schau dir die Textdatei doch einfach mal an im Editor.
War das jetzt das, was Du wissen wolltest?
Klaus M. Hoffmann
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Stringgrid speichern als textdatei?

  Alt 20. Feb 2008, 07:54
Hallo Simon,

du hast an anderer Stelle geschrieben, dass du Informatik-Unterricht hast. Die Qualität des Unterrichtes ist zwar stark personengebunden, aber die wichtigste Botschaft jeder Programmierunterweisung sollte sein: Nie mit der Programmierung beginnen, bevor du dir über die Struktur und Bedeutung der Ein- und Ausgabedaten im Klaren bist. Kennst du schon das Prinzip EVA (Eingabe - Verarbeitung - Ausgabe)?

Du willst Daten aus einem StringGrid in einer Textdatei speichern? Dann bietet sich das CSV-Format an - jede Zeile im Gitter wird zu einer Textzeile und die einzelnen Zelleninhalte werden durch das Trennzeichen Komma voneinander getrennt. Dieses Speicherformat wird vom StringGrid direkt unterstützt, hier ein einfaches Beispiel: klick.

Freundliche Grüße
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:03 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