Entwickler-Ecke
Dateizugriff - Integer wert aus Txt datei auslesen
kalle - So 04.01.09 10:27
Titel: Integer wert aus Txt datei auslesen
Hallo ich habe einen Integer wert mit inttostr gewandelt und dann in eine test.txt geschrieben
und zwar mit tstringlist test.savetofile('c:\test.txt');
funktioniert auch super habe den wert 240 geschrieben
Aber wie kann ich das jetzt wieder auslesen
Klar mit loadfromfile('c:\test.txt');
macht der auch aber dann kommt es beim strtoint zum fehler
Und zwar dieser : 240 is not a valid integer value
Kann mir da jemand helfen?
Ziel ist es alle 5 min einen wert zu speichern und diesen auszulesen und zu verarbeiten
Warum ? wird mein Programm beendet ,stürzt ab ,so soll der gespeicherte Wert beim neustart von meinm
Programm benutzt werden.
Freue mich auf antwort
Oreaden - So 04.01.09 10:38
Schönen Morgen Kalle,
vielleicht wäre es sinnvoller den Integer als Integer zu schreiben und zu lesen, damit brauchst keine Trennzeichen und das ganze ist viel Speichersparender. Hierzu schaue dir mal an
- file of
- assign
- read
- write
- seek
Falls Du das nicht möchtest, solltest Du auch Trennzeichen implementieren. Die Umkehrfunktion von
IntToStr ist
StrToInt.
Schöne Grüße
OREADEN
Blackheart666 - So 04.01.09 10:44
Wie wäre es denn mit einer Ini.
alzaimar - So 04.01.09 11:18
Bevor andere Lösungsmöglichkeiten aufgezeigt werden, sollte der Fehler zunächst lokalisiert werden.
Kalle, schau Dir mal genau den Inhalt bzw. poste den Codeabschnitt, der die Zahl per StrToInt wieder ausliest. Ich vermute, das in dem String, den Du an StrToInt vergibst, weitere Zeichen enthalten sind.
dummzeuch - So 04.01.09 11:50
Titel: Re: Integer wert aus Txt datei auslesen
kalle hat folgendes geschrieben : |
Klar mit loadfromfile('c:\test.txt');
macht der auch aber dann kommt es beim strtoint zum fehler Und zwar dieser : 240 is not a valid integer value
Kann mir da jemand helfen?
|
Ich vermute, Du benutzt folgenden Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| var sl: TStringList; i: integer; begin sl := TStringList.Create; sl.LoadFromFile('c:\test.txt'); i := StrToInt(sl.Text); |
Falls ja, versuche mal:
Grund: .Text enthaelt immer CR/LF Zeilentrenner, auch wenn nur eine einzelne Zeile in der Datei steht. Dieser wiederum wird von StrToInt nicht verstanden.
twm
jaenicke - So 04.01.09 13:30
Titel: Re: Integer wert aus Txt datei auslesen
Das lässt sich auch leicht beheben, indem man statt
Delphi-Quelltext
1:
| i := StrToInt(sl.Text); |
schreibt
Delphi-Quelltext
1:
| i := StrToInt(Trim(sl.Text)); |
;-)
kalle - Mo 05.01.09 00:24
Titel: Danke an alle
Hi und danke ihr habt mein Probl. gelöst
Hab die von Jaenicke genommen
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!