Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi integer-werte in eine datei speichern (https://www.delphipraxis.net/8658-integer-werte-eine-datei-speichern.html)

Affje 9. Sep 2003 16:57


integer-werte in eine datei speichern
 
hi

wie kann ich integer werte einfach in eine datei speichern, ohne die werte immer in eine listbox zu schieben???
wie lade ich die werte dann??

mfg affje

Meflin 9. Sep 2003 17:00

Re: integer-werte in eine datei speichern
 
Delphi-Quellcode:
inttostr(integer).savetofile(dateiname);

nailor 9. Sep 2003 17:01

Re: integer-werte in eine datei speichern
 
Such mal ein Tutorial zum Thema TIniFile !

Christian Seehase 9. Sep 2003 17:05

Re: integer-werte in eine datei speichern
 
Moin Affje,

z.b. mit einem TFileStream:

Delphi-Quellcode:
var
  fsOUT : TFileStream;
  iBuf : integer;

begin
  fsOUT := TFileStream.Create('Pfad zur Datei',fmCreate or fmOpenReadWrite);
  try
    iBuf := 12352345;
    fsOUT.Write(iBuf,4);
  finally
    FreeAndNil(fsOUT);
  end;
end;

Affje 9. Sep 2003 17:25

Re: integer-werte in eine datei speichern
 
Zitat:

Zitat von Meflin
Delphi-Quellcode:
inttostr(integer).savetofile(dateiname);

geht das so einfach??

Meflin 9. Sep 2003 17:27

Re: integer-werte in eine datei speichern
 
jo das weis ich leider auch net so genau,
weil es nur ein string ist und ich jetzt
net auswendig weis, ob man den so einfach abspeichern kann!
einfach ausprobieren!

Christian Seehase 9. Sep 2003 17:27

Re: integer-werte in eine datei speichern
 
Moin Affje,

Zitat:

Zitat von Affje
geht das so einfach??

mit D5 nicht.

Affje 9. Sep 2003 17:31

Re: integer-werte in eine datei speichern
 
ich hab delphi 6 enterprise.
gehts damit?? und dann einfach strtoint(integerwert).loadfromfile('dateiname.txt' )??? als beispiel halt.

Meflin 9. Sep 2003 17:35

Re: integer-werte in eine datei speichern
 
wenns mit d5 nicht geht, gehts vermutlich mit d6 auch net!
aber so könnts gehen:
Delphi-Quellcode:
var int: TStringList;
begin
int[0] := inttostr(integer);
int.savetofile(dateiname);
end;
und zum laden

Delphi-Quellcode:
int.loadfromfile(dateiname);
integer := strtoint(int[0]);

Dagon 9. Sep 2003 17:45

Re: integer-werte in eine datei speichern
 
Zitat:

Zitat von Meflin
Delphi-Quellcode:
inttostr(integer).savetofile(dateiname);

-> mit delphi 7 gehts auch nicht!

Ich empfehle dir auch die TFileStream methode.

Affje 10. Sep 2003 15:50

Re: integer-werte in eine datei speichern
 
Zitat:

Zitat von Christian Seehase
Moin Affje,

z.b. mit einem TFileStream:

Delphi-Quellcode:
var
  fsOUT : TFileStream;
  iBuf : integer;

begin
  fsOUT := TFileStream.Create('Pfad zur Datei',fmCreate or fmOpenReadWrite);
  try
    iBuf := 12352345;
    fsOUT.Write(iBuf,4);
  finally
    FreeAndNil(fsOUT);
  end;
end;

muss ich bei iBuf die zahlen 1235.. einsetzen, oder was muss ich da tun?? meine variable heisst leben, die ich speichern will, was muss ich dann tun?? sorry für die dummen fragen, aber ich kenne mich mit so zeug net so gut aus :? :?

Tpercon 10. Sep 2003 15:57

Re: integer-werte in eine datei speichern
 
Zitat:

Zitat von Meflin
wenns mit d5 nicht geht, gehts vermutlich mit d6 auch net!
aber so könnts gehen:
Delphi-Quellcode:
var int: TStringList;
begin
int[0] := inttostr(integer);
int.savetofile(dateiname);
end;
und zum laden

Delphi-Quellcode:
int.loadfromfile(dateiname);
integer := strtoint(int[0]);

So geht's bestimmt auch nicht! Die StringLsite muß zuerst erzeugt werden! Außerdem fügt man mit Add() etwas hinzu. Du greifst einfach auf das 1 Element der lIste zu, ohne das du weißt ob das existiert.... Gibt also schöne Fehlermeldungen.

Christian Seehase 10. Sep 2003 16:14

Re: integer-werte in eine datei speichern
 
Moin Affje,

iBuf steht für die Variable, die den zu speichernden Wert enthält.
Wenn die bei Dir leben heisst, musst Du nur iBuf gegen leben austauschen.

Affje 10. Sep 2003 18:59

Re: integer-werte in eine datei speichern
 
so nochmal ich:
und was bedeutet dann die 123...??? die integervariable leben in meinem spiel ändert sihc doch stöndig, dann kann ich ja keinen bestimmten wert reinspeichern.

Christian Seehase 10. Sep 2003 19:03

Re: integer-werte in eine datei speichern
 
Moin Affje,

das war ein Beispiel.

Du kannst das ja z.B. als Funktion/Prozedure ausführen:

Delphi-Quellcode:
procedure SaveIntegerToFile(const AsFilepath : string;const AiValue : integer);

var
  fsOUT : TFileStream;

begin
  fsOUT := TFileStream.Create(AsFilePath,fmCreate or fmOpenReadWrite);
  try
    fsOUT.Write(AiValue,4);
  finally
    FreeAndNil(fsOUT);
  end;
end;

Affje 10. Sep 2003 19:16

Re: integer-werte in eine datei speichern
 
das soll auf jeden fall ausgeführt werden, wenn man das prog beendet, also in dem falle dann form1.close...
und AiValue steht wieder für leben oder was?? ih blicke einfach GAR NIX :? :? :? :? :? :?

Christian Seehase 10. Sep 2003 21:28

Re: integer-werte in eine datei speichern
 
Moin Affje,

Zitat:

Zitat von Affje
AiValue steht wieder für leben oder was??

:shock:

klar. Das ist eine Prozedur, ein Dateipfad und ein integer Wert als Parameter übergeben werden.
Was Du jetzt als integer Wert übergibst, bleibt Dir überlassen.

Affje 16. Sep 2003 17:44

Re: integer-werte in eine datei speichern
 
so ich nochmal. ich hatte in der letzten zeit nicht so viel zeit zum ausprobieren.
aber mal ne frgae: kann ich die ganze sache nicht einfach mit nem savedialog regeln??

Christian Seehase 16. Sep 2003 17:46

Re: integer-werte in eine datei speichern
 
Moin Affje,

kaum.
Ein SaveDialog dient nur dazu, den Pfad zu einer Datei auswählen zu können. Er speichert nicht.

Affje 16. Sep 2003 18:22

Re: integer-werte in eine datei speichern
 
ich ich kriege die andere methode nicht zum laufen!!!! wie soll ich ne neue prozedur anlegen, wenn es ein form1.onclose ereignis geben soll, ich checks nicht.

Affje 17. Sep 2003 15:31

Re: integer-werte in eine datei speichern
 
kann mir mal jemand ein beispiel für eine form1.onclose prozedur geben???
wäre echt nett, da mich das so langsam echt aufregt und ich die lust verliere!
thx

Christian Seehase 17. Sep 2003 15:53

Re: integer-werte in eine datei speichern
 
Moin Affje,

Zitat:

Zitat von Affje
kann mir mal jemand ein beispiel für eine form1.onclose prozedur geben???

Und was hat das jetzt mit dem Problem zu tun?

Du hast eine vollständige Prozedure, die Dir einen Integerwert in eine Datei schreibt.
Die müsstest Du dann nur noch in der OnClose Prozedur mit den für Dich passenden Parametern aufrufen.
Diese Parameter wird hier keiner wissen können.

Affje 17. Sep 2003 15:55

Re: integer-werte in eine datei speichern
 
wie rufe ich zum beispiel von einer form1..... eine andere prozedur auf? ich bin ein absoluter newbie!

Christian Seehase 17. Sep 2003 15:57

Re: integer-werte in eine datei speichern
 
Moin Affje,

in der Hoffnung, dass das was mit Deinem ursprünglichen Problem zu tun hat:

Delphi-Quellcode:
procedure TForm1.WelcheProzedurAuchImmer;
begin
  WeitereProzedur;
end;

Affje 17. Sep 2003 16:02

Re: integer-werte in eine datei speichern
 
jep hast mir geholfen, thx.
aber eine frage habe ich noch, dann gebe ich hoffentlich endlich ruhe :)

ixch habe das beispiel zum tfilestream ausgedruck. wie lade ich das ganze zeugs wieder?? auf jeden fall muss es unter formcreate oder??

Christian Seehase 17. Sep 2003 16:19

Re: integer-werte in eine datei speichern
 
Moin Affje,

Zitat:

Zitat von Affje
wie lade ich das ganze zeugs wieder??

was meinst Du damit?

Vielleicht könntest Du die letzte Zeile in Deinem Posting noch einmal überarbeiten. ;-)

Affje 18. Sep 2003 14:07

Re: integer-werte in eine datei speichern
 
ja, ich meine, wie ich die integer werte wieder aus der datei lade, ich will sie ja nicht an spass an der freude in ne datei speichern :)

Spezi1980 18. Sep 2003 15:20

Re: integer-werte in eine datei speichern
 
Hallo,


Delphi-Quellcode:
procedure speichern(Datei : String; int : Integer);
Var fsOUT : TFileStream;
begin
  try
    fsOUT := TFileStream.Create(Datei,fmCreate or fmOpenReadWrite);
    fsOUT.Write(int,sizeof(int));
    {hier könnte jetzt noch mehr folgen, was du speichern möchtest}
  finally
    FreeAndNil(fsOUT);
  end;
end;

function laden(Datei : String): Integer;
Var fsOUT : TFileStream; iBuf : Integer;
begin
  Result := 0;
  try
    fsOUT := TFileStream.Create(Datei,fmCreate or fmOpenReadWrite);
    fsOUT.read(iBuf,sizeof(int));
    result := iBuf;
    {hier könnte jetzt noch mehr folgen, was du speichern möchtest}
  finally
    FreeAndNil(fsOUT);
  end;
end;

procedure Form1.Create(Sender:TObject)
begin
   Level := Laden('C:\Test.txt')
end;

procedure Form1.destroy(Sender:TObject)
begin
   Speichern('C:\Test.txt',Level)
end;
So oder so ähnlich müßte es gehen. (konnte ich nicht testen)

als sehr einfsche Alternative kannste Deine Werte auch in eine Stringliste speichern (z.b: Memo1.Lines.add(IntToStr(Level))) und dann die Stringliste speichern (über Memo1.Lines.Savetofile('C:\Test')). Dann holste dir die Stingliste bei Programmstart wieder (über Memo1.Lines.Loadfromfile('C:\Test')) und liest Deinen Integerwert wieder aus (Level := StrToIntDef(Memo1.Lines[0],0)).

Gruß

Affje 19. Sep 2003 18:35

Re: integer-werte in eine datei speichern
 
thx

Affje 20. Sep 2003 15:05

Re: integer-werte in eine datei speichern
 
ich habe mich umentschieden, ich mache es mit ner stringlist. mit nem memo. beim laden: welcher der werte sagt mir was über die linie??

strtointdef(memo1.lines[0],0)
was bedeuten die nullen, welche die zeile der meomlist??

chris01 20. Sep 2003 15:06

Re: integer-werte in eine datei speichern
 
Ja!!
Ein Memo ist sozusagen ein Array

gruß chris

Affje 20. Sep 2003 15:11

Re: integer-werte in eine datei speichern
 
und welche null von den beiden ist jetzt die zeile, was bedeutet die andere, was ist ein array?? :)) ich bin der absolute noob :(

Affje 20. Sep 2003 15:12

Re: integer-werte in eine datei speichern
 
noch ne frage: wie kann ich dioe dinger verschlüsseln??
muss aber nicht unbedingt sein.

Christian Seehase 20. Sep 2003 15:13

Re: integer-werte in eine datei speichern
 
Moin Affje,

aber Deine Hilfe Funktioniert doch? ;-)
Schau doch einfach mal nach was StrToIntDef macht.

chris01 20. Sep 2003 15:15

Re: integer-werte in eine datei speichern
 
Die in dem [] ist die Reihe!! des Memos

Affje 20. Sep 2003 15:17

Re: integer-werte in eine datei speichern
 
und die andere null ist??
aber danke, ihr habt mir echt sehr geholfen :)

chris01 20. Sep 2003 15:30

Re: integer-werte in eine datei speichern
 
Aus der Delphi-Hilfe:
Code:
Delphi-Syntax:

function StrToIntDef(const S: string; const Default: Integer): Integer;

C++ Syntax:

extern PACKAGE int __fastcall StrToIntDef(const AnsiString S; const int Default);

Beschreibung

StrToIntDef konvertiert konvertiert den String S, der eine Integer repräsentiert (in dezimaler oder hexadezimaler Form), in eine Zahl. Enthält S keine gültige Zahl, gibt StrToIntDef Default zurück.

Affje 20. Sep 2003 19:29

Re: integer-werte in eine datei speichern
 
ich bins nochmal :)
wie kann ich die test.txt vor dem speichern wieder löschen und dann neu erstellen??
thx

chris01 20. Sep 2003 19:42

Re: integer-werte in eine datei speichern
 
Wieso überschreibst du diese nicht einfach mit Rewrite?

:angle:

Affje 20. Sep 2003 19:47

Re: integer-werte in eine datei speichern
 
wie lautet da der befehl?


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:21 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz