| Autor |
Beitrag |
Shoppix
      
Beiträge: 19
|
Verfasst: Fr 25.03.05 00:01
Hallo,
ich hab mal wieder ne Frage...ich habe eine TXT datei die ich jetzt teilweise in Labels und teilweise in ein Memo oder RichEdit (unterschied ist mir nicht klar) einlesen möchte...Wie geht das?
Ein weiters Problem ist, dass ich jeweils eine Zeile aus dem TXT einem der Labels bzw. Memo/richedit "zuweisen" möchte ... ich blick da nicht durch...
biddebidde helft mir....
ich danke im Voraus;)
Shoppix
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Fr 25.03.05 00:18
Hallo,
also:
Mit einem Memo kannst Du nur reinen Text darstellen, das Richedit kann formatierten Text anzeigen.
Ich glaube es wäre gut, wenn Du Dir mal dieses durchliest:
Grundlagen
und
Einsteiger-Tutorials
MfG Lannes
|
|
Shoppix 
      
Beiträge: 19
|
Verfasst: Fr 25.03.05 00:36
Titel: ...Danke...
naja wenn sie denken ich würde einfach mal was postne bevor ich zumindest bei der Delphie hilfe gesucht habe .. entteuscht mich sehr.... natürlich habe ich mich schon durch die online literatur durch zu pauken ... wei gesagt das reihne einlesen ist nicht so dass problem sondern in verbindung damit das ich eine bestimmte zeile aus der text datei in dieses memo/richedit schrieben(einlese) ...
ich wäre dankbar wenn mir jemand helfen würde ..
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Fr 25.03.05 01:06
Hallo,
wo hast Du denn die Zeilen eingelesen?
Ich nehme mal an das Du die TXT-Datei in ein Memo eingelesen hast.
Mit folgendem Code kannst Du z.B. die erste Zeile des Memos in ein Label zu setzen:
Delphi-Quelltext 1: 2: 3: 4:
| procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption := Memo1.Lines[0];end; |
|
|
Shoppix 
      
Beiträge: 19
|
Verfasst: Fr 25.03.05 11:47
Titel: Frage falsch verstanden
Ich glaub ihr habt meine Frage falsch verstandern ich mach mal nen Beispiel, dann könnt ihr euch besser vorstellen:
Also ich habe eine TXT-Datei in der steht:
xyz, zyx |Also nach jeder Zeile 2leerschläge..(für das Einlesen)
Straße
PLZ
.
.
.
Notiz, (die kann auch mehere Zeilen gehen)
so das gewohnliche einlesen ist auch kein Prob mehr ( mit For i:=0 to 15 do )...
dann sucht er im formular nach Tlabel und schriebt das der Reihe nach ein...
Wie ihr verstanden habt handelt es sich um ein Adressbuch: - Jetzt will ich die Notitz-Zeile aber nicht in ein Tlabel schriben sondern in ein Richedit oder Memo...(damit ich den Text ändern kann und wieder Speichern ) -- Also eine Kontakt ändern Funktion...
bidde um Antwort...
Shoppix
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Fr 25.03.05 13:57
Hallo,
z.B. so:
Delphi-Quelltext 1: 2:
| if Notzzeile then Memo1.Lines.add('Zeilentext'); |
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
Shoppix 
      
Beiträge: 19
|
Verfasst: Fr 25.03.05 15:42
Titel: Big Frage
Wie soll den das funktionieren???
Ich muss doch erst die Datei einlesen z.B mit S.loadfromfile(''); dann mit einer schleife durchsuchen bzw ich weiß welche zeile es ist aber nicht wo sie endet.. und diese muss ich in ein memofeld einlesen (evt. einen string zuweisen und dann schrieben memo1.lines.add(string).... so die zeilen davor aber in Labels schreiben das habe ich bis jetzt mit
for i:=0 to 15 do // für 15 die Anzahl der Edits nehmen
Delphi-Quelltext 1:
| (FindComponent('label' + IntToStr(i)) as Tlabel).caption := s[i]; |
gemacht..
HILFE!
Moderiert von AXMD: Delphi-Tags hinzugefügt.
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Fr 25.03.05 16:40
Titel: Re: Big Frage
Hallo,
Shoppix hat folgendes geschrieben: |
Ich muss doch erst die Datei einlesen z.B mit S.loadfromfile(''); |
Damit hast Du kein Problem (siehe vorigen Post), gut
Ist "S" eine TStringList?
Shoppix hat folgendes geschrieben: | | dann mit einer schleife durchsuchen bzw ich weiß welche zeile es ist aber nicht wo sie endet.. |
Ist "... aber nicht wo sie endet.. " dein Problem?
Hast Du in einer TXT-Datei nur eine Adresse oder mehrerer?
Shoppix hat folgendes geschrieben: | | for i:=0 to 15 do // für 15 die Anzahl der Edits nehmen |
Mit 0 bis 15 fragst Du aber 16 Zeilen ab, da 0 die erste Zeile ist.
Um Dir besser helfen zu können sind mehr Informationen erforderlich. 
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
Shoppix 
      
Beiträge: 19
|
Verfasst: Fr 25.03.05 18:37
Titel: Mein Projekt im Detail
Hallo,
Wie gesagt ich schreibe ein Adressbuch:
Zuerst habe ich viele Edits erstellt in die ich meine Infos eintrage (das ist adresse, Geburtstag...) so auf ButtenClick speicher er 2 Dateien einmal alle infos aus den Edits untereinander in eine Txt-datei dabei lasse ich die erste zeile in der Txt-datei frei und Benutze für das Ende einer zeile zwei Leerschläge (weil wenn ich ein ; nehme schreibt er das beim einlesen wieder hin--> die Leerschläge sieht man nicht) so in die zweite txt datei schriebt er nur den ->Vornamen, Nachname[ ]<-, bei jedem neuen eintrag öffnet er diese schriebt den neuen Vornamen, Nachnacmen hinein und speicher das. Diese Datei benutze ich indem ich sie in ein combobox schreibe und bei auswahl lasse ich in dem ordenr nach der datei suchen (combobox.caption:='')...das Funktioniert da in der einen Datei nur die Namen und Vornamen stehen die es auch als Datei mir zusatz informationen gibt..  so jetzt will ich also eine Funktion einbauen die es ermöglicht einen bereits gespeicherten Eintrag zu laden und zu verändern....Das ist im Grundegenommen mein prob**...
Das wollte ich dadurch lösen das er mir die information aus dem TXT mit zusatz information in edits läd damit mann sie verändern kann .. auf einen erneuten ButtenClick soll er dann die älte datei löschen und die neue speichern (das dürfte kein Prob sein weil ich das ja schon kann ...  ... Und aus der TXT datei in der nur die namen und vornamen stehen kenne ich eine funktion die lautet: suche nach XY und ersätze durch_____... das wird also auch kein prob** darstellen ...
aber mein Problem ist es ja die Datei mit zusatz in verschiedene "objekte" (edit / Memo ) zu laden
hier mal ein beispeil einer Datei mit Zusatz:
//ist einfach leer
Karlo
Christoph
-
Karlo, Christoph
Einsteinstr 4
47897
Remscheid
De
-
chris@msn.com
02191-12345678
-
-
-
Her mit dem Spaß!!! Wir fahren nach Bulgarien...
die ersten 15 zeilen (mir //ist leer) sollen in Labels udn die letzte zeile in ein Memo
so ich hoff das sind genug Infos;)
shoppix
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Fr 25.03.05 21:36
Hallo,
ich gehe jetzt mal davon aus, das du die Daten in eine StringList geladen hast
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24:
| var S : TStringList; i : Integer; begin S := TStringList.Create; try S.LoadFromFile('C:\Temp\Name.TXT'); for i := 0 to 14 do begin (FindComponent('label' + IntToStr(i)) as Tlabel).caption := s[i]; end; for i := 15 to S.Count-1 do begin Memo1.Lines.Add(S[i]); end; finally S.Free; end; end; |
Erklärung Index <> Count
Quelltext 1: 2: 3: 4:
| Index | Count 0 1 1 2 2 3 |
Nimmt man nun einen Schleifenzähler(in deinem Fall i) um auf den Index zuzugreifen,
so ist die letzte Zeile der Beispieldaten Count-1 = 2
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
Shoppix 
      
Beiträge: 19
|
Verfasst: Sa 26.03.05 03:02
Titel: aha
Hallo,
ich glaub ich habs verstanden ...  ... froi jetzt kann ich entlich weiter schrieben ...
Ich danke insbesondere dem Lannes, dafür das er sich so große Mühe mit mir und meinem Prob gemacht hat
DANKE 
|
|
|