.txt Datei in einen Stringgrid einfügen??
Re: .txt Datei in einen Stringgrid einfügen??
ok, wie bekomme ich die procedure ladedatei hin?
Ich habe es bisher immer versucht reinzukopieren. Aber das scheint ja Falsch zu sein.
Ich habe es bisher immer versucht reinzukopieren. Aber das scheint ja Falsch zu sein.
Re: .txt Datei in einen Stringgrid einfügen??
Einfach die Procedure mittels Copy & Paste von Soner nehmen und in deine Unit kopieren. Aufpassen musst du nur, dass du sie vor deinem ersten Aufruf schreibst also, dass sie vor deinem "procedure TForm1.MenuItem5Click(Sender: TObject);" steht! Ansonsten müsste sie zuvor deklariert werden, da der Compiler sie sonst nicht findet!
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
Re: .txt Datei in einen Stringgrid einfügen??
Ah, ok daran lag es Danke.
Aber nun hab ich immer noch das Problem das alles in der ersten Spalte eingefügt wird.
http://abload.de/image.php?img=1wbke2.png
Aber nun hab ich immer noch das Problem das alles in der ersten Spalte eingefügt wird.
http://abload.de/image.php?img=1wbke2.png
Re: .txt Datei in einen Stringgrid einfügen??
Ich habe jetzt den Code von Soner im einzelnen nicht geprüft bzw. die Procedure getestet, meine Vermutung wäre allerdings, daß du einen anderen Seperator genommen hast als er. Diesen müsstest du auf deinen anspassen, sonst findet der Compiler keinen und behandelt den Text als nur einen String!
Code: Alles auswählen
case aLine[i] of
' ': begin //Trennzeichen (Leerzeichen) erreicht Wert zum Grid - !!! hier müsstest du deinen Seperator einfügen !!!
if c>=AGrid.ColCount then AGrid.ColCount:=c+1;
AGrid.Cells[c,r]:=aWort;
aWort:='';
Inc(c);
end;
else aWort:=aWort+aLine[i];
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
Re: .txt Datei in einen Stringgrid einfügen??
ojeoje, was ist ein Seperator?
Re: .txt Datei in einen Stringgrid einfügen??
Sorry falsche Rechtschreibung! Heisst nicht Seperator sondern Separator!
Das ist der, wo du erkennst, wann eine Zahl aufhört und die nächste anfängt!
Also in deinem Textfile steht:
1 3 4
1,4 3,2 5
2,1 33 44
Damit der Compiler weiss, dass 1 und 3 zwei Zahlen sind und nicht 13, steht dazwischen ein Leerzeichen, also ist in diesem Fall der Separator ein Leerzeichen, also ' '!
Das ist der, wo du erkennst, wann eine Zahl aufhört und die nächste anfängt!
Also in deinem Textfile steht:
1 3 4
1,4 3,2 5
2,1 33 44
Damit der Compiler weiss, dass 1 und 3 zwei Zahlen sind und nicht 13, steht dazwischen ein Leerzeichen, also ist in diesem Fall der Separator ein Leerzeichen, also ' '!
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2817
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: .txt Datei in einen Stringgrid einfügen??
Das weiß man nicht so genau, was im ersten Beitrag wie ein Leerzeichen aussieht...Michl hat geschrieben:Damit der Compiler weiss, dass 1 und 3 zwei Zahlen sind und nicht 13, steht dazwischen ein Leerzeichen, also ist in diesem Fall der Separator ein Leerzeichen, also ' '!
1 2 3 4
5 6 7 8
... könnte auch ein Tab sein:
Code: Alles auswählen
1 2 3 4
5 6 7 8
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
-
- Beiträge: 726
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
Re: .txt Datei in einen Stringgrid einfügen??
Dann füge alle als Separator in Frage kommende Zeichen hinzu dann funktionert es mit allen möglichen Separatorformen:
Viel wichtiger ist, ich würde in deiner Stelle ein bißchen Grundlagen von Pascal lernen.
Code: Alles auswählen
case aLine[i] of
' ',';',#9: begin //Trennzeichen (Leerzeichen, semikola,tabulator) erreicht Wert zum Grid
if c>=AGrid.ColCount then AGrid.ColCount:=c+1;
AGrid.Cells[c,r]:=aWort;
aWort:='';
Inc(c);
end;
else aWort:=aWort+aLine[i];
-
- Beiträge: 565
- Registriert: So 26. Aug 2012, 09:03
- OS, Lazarus, FPC: Windows(10), Linux(Arch)
- CPU-Target: 64Bit
Re: .txt Datei in einen Stringgrid einfügen??
Ich hab ein ähnliches Problem,
gibt es eine möglichkeit den Inhalt von einer TStringGrid aus einer Resource Datei zu laden?
Ich finde beim TStringGrid nur den Befehl [...].LoadfromFile(...) aber nicht [...].LoadFormResource(...) oder [...].LoadFromStream(...) wie beim TStringList
auf das TXMLConfig, was in LoadFromFile benutzt wird besitzt keinen LoadfromResource oder LoadFromStream befehl...
Edit: Ich hatte vor, den Inhalt der StringGrid aus dem Internet herunterzuladen, aber ohne ihn in irgendwelchen Appdata oder Userdata Ordner Temporär abzuspeichern
Danke schonmal im Voraus
Komoluna
gibt es eine möglichkeit den Inhalt von einer TStringGrid aus einer Resource Datei zu laden?
Ich finde beim TStringGrid nur den Befehl [...].LoadfromFile(...) aber nicht [...].LoadFormResource(...) oder [...].LoadFromStream(...) wie beim TStringList
auf das TXMLConfig, was in LoadFromFile benutzt wird besitzt keinen LoadfromResource oder LoadFromStream befehl...
Edit: Ich hatte vor, den Inhalt der StringGrid aus dem Internet herunterzuladen, aber ohne ihn in irgendwelchen Appdata oder Userdata Ordner Temporär abzuspeichern
Danke schonmal im Voraus
Komoluna
Programmer: A device to convert coffee into software.
Rekursion: siehe Rekursion.
Rekursion: siehe Rekursion.