AGB  ·  Datenschutz  ·  Impressum  







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

Text in TIniFile speichern

Ein Thema von Niels · begonnen am 31. Mär 2005 · letzter Beitrag vom 31. Mär 2005
Antwort Antwort
Seite 1 von 2  1 2      
Niels

Registriert seit: 25. Okt 2003
192 Beiträge
 
#1

Text in TIniFile speichern

  Alt 31. Mär 2005, 14:33
Hallo,
ich möchte den Inhalt eines Memos in einer Ini-Datei speichern. Würde nur ungern einen anderen Dateityp wählen, weil ich auch viele andere Informationen des Programms darin speichere. Das Speichern funktioniert auch, beim Auslesen wird allerdings nur das erste Wort des Textes angezeigt. Ist es irgendwie möglich trotzdem den gesamten Text wieder auszulesen oder muss ich eine TCustomFile benutzen?

MfG Niels
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#2

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:34
Da Texte Zeilenumbrüche enthalten können, kannst Du diese nicht in INI-Files abspeichern. In einer IniFile definiert eine Zeile einen Wert

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#3

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:36
du kannst beim Memo.text einen String vom ganzen Text bekommen. den brauchst du dann nur noch normal abspeichern.

Zu spät
@sakura aber es geht doch
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:37
Zitat von gsh:
du kannst beim Memo.text einen String vom ganzen Text bekommen. den brauchst du dann nur noch normal abspeichern.

Zu spät
@sakura aber es geht doch
Der String enthält aber die von mir genannten Zeilenumbrüche und deswegen geht es ja nicht

......

P.S.: Aber Du könntest mal Memo1.Lines.CommaText versuchen
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von gsh
gsh

Registriert seit: 24. Okt 2004
1.542 Beiträge
 
Delphi XE Architect
 
#5

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:40
Aber mann bekommt doch bei Memo.text einen String den hat man danach wieder bei Meo.text rein und man hat wieder den gesamten text mit zeilumbrüchen
Alex
"Sage nicht alles, was du weißt, aber wisse alles, was du sagst!" Matthias Claudius
"Wer sich über Kritik ärgert, gibt zu, daß er sie verdient hat." Tacitus
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#6

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:41
Zitat von gsh:
Aber mann bekommt doch bei Memo.text einen String den hat man danach wieder bei Meo.text rein und man hat wieder den gesamten text mit zeilumbrüchen
Dieser String enthält die Zeilenumbrüche, korrekt. Wenn man diesen String samt Umbrüchen jetzt in einer INI-File speichert, dann beendet der erste Umbruch den Wert in der Ini-File und somit kann nicht mehr der gesamte Text des Memo rekonstruiert werden...

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Orbmu2k
Orbmu2k

Registriert seit: 29. Nov 2004
Ort: Erfurt
254 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:52
Man könnte entweder die Zeilenumbrüche in "normale" Zeichen kovertieren und beim laden wieder in Zeilenumbrüche machen oder du speicherst den Text Zeile für Zeile->

Delphi-Quellcode:

//Speichern

for i := 0 to Pred(Memo1.Lines.Count) do
  ini.WriteString('Memo1','Line'+IntToStr(i),Memo1.Lines[i]);

//Laden

Memo1.Clear;
i:=0;
while ini.ValueExists('Memo1','Line'+IntToStr(i)) do
begin
  Memo1.Lines.Add(ini.ReadString('Memo1','Line'+IntToStr(i),''));
  Inc(i);
end;
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 14:57
Nimm halt einfach memo1.savetofile.

Und wenns gar nicht anders geht, probier folgendes:

Delphi-Quellcode:
for I:=0 to memo1.lines.count-1 do
ini.writestring('Memotext','Zeile'+inttostr(I),memo.lines.strings[I]);
Würde ich aber nicht empfehlen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#9

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 15:04
Ich zitiere mich nochmal:
Zitat von sakura:
P.S.: Aber Du könntest mal Memo1.Lines.CommaText versuchen
Das sollte am einfachsten sein

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Orbmu2k
Orbmu2k

Registriert seit: 29. Nov 2004
Ort: Erfurt
254 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Text in TIniFile speichern

  Alt 31. Mär 2005, 15:09
Zitat von sakura:
Ich zitiere mich nochmal:
Zitat von sakura:
P.S.: Aber Du könntest mal Memo1.Lines.CommaText versuchen
Das sollte am einfachsten sein

......
Ich glaube der String Pro Zeile ist in der Länge begrenzt irgendwann macht er dann doch ne Umbruch so bei 2048 Zeichen ... glaub ich zumindest

Der nächste Punkt ist das wenn der Benutzer im MemoText den Delimiter verwendet die Umbrüche auch nicht mehr stimmen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 22:27 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