| Autor |
Beitrag |
Jakane
      
Beiträge: 257
|
Verfasst: Mi 18.05.11 15:18
Hallo liebe Delphi-Helfer
In meinem Programm lese ich eine DatenbankFelder aus und gebe sie über eine ListBox in eine .txt Datei.
Jetzt habe ich nur das Problem, dass eines dieser Felder ein MemoFeld ist, welches ich auch nicht ändern kann.
Dadurch rutscht aber auch in der .txt eine 2.Zeile mit rein und macht sowohl Filter als auch Sortierung kaputt
Da das Memo nur 80 Zeichen fassen kann und die Vorfelder "nur" auf knapp 150, kommt man nicht an die 255 Grenze der txt-Zeilen.
Wie bringe ich das DBMemo dazu statt
"Ich habe einen Fehler "
"gefunden."
das in mein .txt zu schreiben
"Ich habe einen Fehler gefunden."
Danke für Hilfen 
|
|
Nersgatt
      
Beiträge: 1581
Erhaltene Danke: 279
Delphi 10 Seattle Prof.
|
Verfasst: Mi 18.05.11 15:20
Ersetze in dem String das #13#10 durch nix (= '') bzw. durch einen Leerschritt.
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Mi 18.05.11 15:42
Nersgatt hat folgendes geschrieben : | | Ersetze in dem String das #13#10 durch nix (= '') bzw. durch einen Leerschritt. |
Problem... es gibt kein #13#10 in dem String soweit ich das sehe, wie löscht man was unsichtbares?
|
|
Nersgatt
      
Beiträge: 1581
Erhaltene Danke: 279
Delphi 10 Seattle Prof.
|
Verfasst: Mi 18.05.11 15:55
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Mi 18.05.11 16:00
Ich verwende selbst #13 um ein Zeilenumbruch zu provozieren.
Aber was ich nicht sehe kann ich nicht löschen. und ein #13 sieht man nicht als #13 sondern als zeilenumbruch, wie löscht mal sowas?
|
|
zuma
      
Beiträge: 660
Erhaltene Danke: 21
Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
|
Verfasst: Mi 18.05.11 16:23
_________________ Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Mi 18.05.11 16:28
|
|
zuma
      
Beiträge: 660
Erhaltene Danke: 21
Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
|
Verfasst: Mi 18.05.11 16:34
was ist memo für ein typ? TMemo oder String?
zeig mal die codestelle, wo du die ersetzung machst ...
_________________ Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Do 19.05.11 09:18
|
|
Nersgatt
      
Beiträge: 1581
Erhaltene Danke: 279
Delphi 10 Seattle Prof.
|
Verfasst: Do 19.05.11 09:29
Und wo ist da die Ersetzung?
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Do 19.05.11 09:39
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| Var Sx, Memo : String; Begin . . . Memo := StringReplace(DBtxtFehlertext.Field.AsString, '#13#10', '', [rfReplaceAll]); Sx:= '|' + DBtxtNummer.Field.AsString + '|' + txtKundenNr.Text + '|' + DBtxtVersion.Field.AsString + '|' + DBtxtUsername.Field.AsString + '|' + DBtxtDatumZeit.Field.AsString + '|' + DBtxtPerMail.Field.AsString + '|' + Memo + '|' + DBtxtFormCaption.Field.AsString + '|' + DBtxtFormClassName.Field.AsString;
lbTransport.Items.Add(Sx); |
Was nicht funktioniert, lass ich üblicherweise nicht drin.
So hatte ich sie verwendet.
Moderiert von Narses: Code- durch Delphi-Tags ersetzt
|
|
Nersgatt
      
Beiträge: 1581
Erhaltene Danke: 279
Delphi 10 Seattle Prof.
|
Verfasst: Do 19.05.11 09:43
Da stimmt ja die Abfolge nicht. Mach die Ersetzung auf Sx:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| Sx:= '|' + DBtxtNummer.Field.AsString + '|' + txtKundenNr.Text + '|' + DBtxtVersion.Field.AsString + '|' + DBtxtUsername.Field.AsString + '|' + DBtxtDatumZeit.Field.AsString + '|' + DBtxtPerMail.Field.AsString + '|' + Memo + '|' + DBtxtFormCaption.Field.AsString + '|' + DBtxtFormClassName.Field.AsString;
Sx := StringReplace(Sx, '#13#10', '', [rfReplaceAll]);
lbTransport.Items.Add(Sx); |
Oder nur auf das eine Feld direkt beim Zusammensetzen des Strings.
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Do 19.05.11 09:51
Funktioniert leider auch nicht
Selbst wenn ich nur '#' statt #13#10 mache, löscht er mir zwar alle # zeichen, aber der zeilenumbruch bleibt
|
|
Nersgatt
      
Beiträge: 1581
Erhaltene Danke: 279
Delphi 10 Seattle Prof.
|
Verfasst: Do 19.05.11 10:17
_________________ Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
Für diesen Beitrag haben gedankt: Jakane
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Do 19.05.11 10:21
|
|
zuma
      
Beiträge: 660
Erhaltene Danke: 21
Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
|
Verfasst: Do 19.05.11 10:58
ups
schnell vor Feierabend noch antworten, etwas c&p, kontroll-lesen gestrichen und schon schreibt man so'n sch...
_________________ Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
Für diesen Beitrag haben gedankt: Jakane
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Do 19.05.11 11:14
|
|
DonManfred
      
Beiträge: 148
Erhaltene Danke: 2
Windows 7
Delphi XE3 Pro + HTML5Builder
|
Verfasst: Do 19.05.11 12:57
_________________ Gruss Manfred
|
|
Jakane 
      
Beiträge: 257
|
Verfasst: Do 19.05.11 13:21
Nersgatt war 2,5h schneller 
|
|
DonManfred
      
Beiträge: 148
Erhaltene Danke: 2
Windows 7
Delphi XE3 Pro + HTML5Builder
|
Verfasst: Do 19.05.11 15:28
_________________ Gruss Manfred
|
|