AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi einen String in eine neue/leere Datei schreiben

einen String in eine neue/leere Datei schreiben

Ein Thema von Rapthor · begonnen am 12. Mai 2003 · letzter Beitrag vom 14. Mai 2003
Antwort Antwort
Rapthor

Registriert seit: 30. Nov 2002
139 Beiträge
 
#1

einen String in eine neue/leere Datei schreiben

  Alt 12. Mai 2003, 13:01
Wie kann ich einen String in eine neue Datei schreiben lassen?
Und wie kann ich den String wieder aus der Datei herauslesen?
  Mit Zitat antworten Zitat
Haegar

Registriert seit: 10. Dez 2002
Ort: Peitz
319 Beiträge
 
Delphi 7 Professional
 
#2
  Alt 12. Mai 2003, 13:29
wo nimmste denn den string her? vielleicht aus memo oder listbox oder so?

gruss haegar
  Mit Zitat antworten Zitat
Rapthor

Registriert seit: 30. Nov 2002
139 Beiträge
 
#3
  Alt 12. Mai 2003, 13:33
Aus einer TComboBox (hab sie UserListe genannt) nehm ich diesen String und bewerkstelligen will ich, dass der aktuell ausgewählte String in diese Datei geschrieben wird.
Das aktuell ausgewählte müsste ja dann UserListe.Text sein oder?
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#4
  Alt 12. Mai 2003, 13:44
Schau dir mal in der Hilfe/Library TextFile Reset Rewrite Readln Writeln und eventuell Streams an. Bei manchen Kompos gibts sowas wie SaveToFile LoadFromFile.
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von flow
flow

Registriert seit: 25. Apr 2003
61 Beiträge
 
#5
  Alt 12. Mai 2003, 13:52
Ja genau.

Du kannst eine Stringlist anlegen:

Delphi-Quellcode:
procedure WriteToFile;
var slComboItems : TStringlist;
begin
 slComboItems.Create;
 lsComboItems.Assigen(UserList.Items);
 lsComboItems.SaveToFile('C:\FileName.txt{der Dateiname});
 slComboItems.Free;
end;
Das lesen funktioniert umgekehrt:

Delphi-Quellcode:
procedure ReadFromFile;
var slComboItems : TStringlist;
begin
 slComboItems.Create;
 lsComboItems.LoadFromFile('C:\FileName.txt{der Dateiname});
 UserList.Assign(lsComboItems);
 slComboItems.Free;
end;
Das ist die schnelle Variante, funktioniert auch noch auf mit anderen Varianten.

Hab jetzt kein Delphi angeworfen, ist frei gecodet, also Fehler sind vorbehalten !

FLOW
die welt ist eine scheibe

...und aus vinyl
  Mit Zitat antworten Zitat
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#6
  Alt 12. Mai 2003, 13:59
Zum Beispiel folgendermassen:

Delphi-Quellcode:
procedure StringInDatei(zeile: string);
var
  Datei: TextFile;
begin
  AssignFile(Datei,'c:\temp.txt');
  ReWrite(Datei);
  WriteLn(Datei,zeile);
  CloseFile(Datei);
end;
zum schreiben eines Strings in die Datei, und zum Lesen:

Delphi-Quellcode:
function StringAusDatei: string;
var
  Datei: TextFile;
  zeile: string;
begin
  AssignFile(Datei,'c:\temp.txt');
  Reset(Datei);
  ReadLn(Datei,zeile);
  CloseFile(Datei);
  result := zeile;
end;
Dabei ist aber folgendes zu beachten. Ich gehe jetzt der Einfachheit halber davon aus, dass Du immer in die Datei temp.txt auf Laufwerk C schreibst. Natürlich kannst Du den Dateinamen auch in einer Variablen übergeben oder was auch immer. Ausserdem übernimmt die Funktion zum Schreiben in die Datei den String und nicht die ComboBox. Auslesen musst Du die also vorher selbst, z. B. über:

Delphi-Quellcode:
if ComboBox.ItemIndex <> -1 then
  StringInDatei(ComboBox.Text);
Die Funktion würde also NICHT aufgerufen, wenn nichts selektiert ist (ItemIndex ist -1, wenn man in der ComboBox nichts auswählt), und wenn etwas selektiert ist, wird der gewählte Text in die Datei geschrieben. Durch das ReWrite wird die Datei übrigens jedesmal ÜBERschrieben. Es wird nichts angehängt!!!

Der Aufruf der Funktion StringAusDatei liefert Dir einfach die erste Zeile der Datei zurück. Das sollte in diesem Fall ja der vorher hineingelegte String sein...

AktUser := StringAusDatei;
Matthias

[edit=Daniel B]Delphi-Tags eingefügt. MfG Daniel B.[/edit]
Matthias Jenke
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#7
  Alt 12. Mai 2003, 16:02
Hallo,

Klick 1
Klick 2

Grüsse, Daniel
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.317 Beiträge
 
Delphi 2006 Professional
 
#8
  Alt 12. Mai 2003, 18:28
Warum einfach, wenne s umständlich geht:
Combobox1.Items.SaveToFile(); Combobox1.Items.LoadFromFile();
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#9
  Alt 13. Mai 2003, 12:02
@Luckie

Wenn ich es richtig verstanden habe, geht es nicht darum, nur die kompletten Listeninhalte in eine Datei zu speichern, sondern speziell den ausgewählten Eintrag zu speichern, bzw. auszulesen.

Daher ein wenig mehr Aufwand.


Matthias
Matthias Jenke
  Mit Zitat antworten Zitat
Rapthor

Registriert seit: 30. Nov 2002
139 Beiträge
 
#10
  Alt 14. Mai 2003, 07:16
Super danke! Funktioniert alles schon
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 13:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf