sonderzeichen bei writefile
Übersicht

battlegorgeBetreff: sonderzeichen bei writefile |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo, ich habe mit writefile eine Zahl in eine datei geschrieben.
Die Zahl wird danach auch wieder richtig ausgelesen. Aber wieso sieht die Textdatei so aus: Í[ ? Code: [AUSKLAPPEN] Strict Graphics 640,480,0,60 Global highscore f_write() f_read() While Not KeyHit(key_escape) DrawText highscore,100,100 Flip Cls Wend Function f_write() Local file:tstream file = WriteFile("highscore.dat") WriteInt file,123456789 CloseFile(file) End Function Function f_read() Local file:tstream file = OpenFile("highscore.dat") highscore = ReadInt(file) CloseFile(file) End Function |
||
![]() |
Jolinah |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo
Ganz einfach, die Zahl wird binär geschrieben. Benutze WriteLine um eine Zeile in die Datei zu schreiben: Code: [AUSKLAPPEN] WriteLine stream, Zahl
WriteInt schreibt 4 einzelne Bytes in die Datei, welche die Zahl repräsentieren. Eine Textdatei hingegen ist ASCII- bzw. Unicode-codiert und interpretiert die 4 Bytes als 4 einzelne Zeichen ![]() PS: Binär sind z.B. Spielstände meist gespeichert, so dass nicht jeder mit 'nem Texteditor einfach alles manipulieren kann... Das Textformat ist nützlich für INI-Dateien etc. braucht aber in der Regel mehr Speicher um das Selbe zu speichern. Die Zahl 123456 z.B. braucht im Textformat 6 Bytes (6 Zeichen), während sie Binär eben in einen Integer mit 4 Bytes passt. |
||
battlegorge |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke, die Highscoreliste funktioniert jetzt ![]() Hier ist der code falls es jemanden interessiert. Code: [AUSKLAPPEN] Strict Graphics 640,480,0,60 Global highscore:Int[10] f_write() f_read() While Not KeyHit(key_escape) Local counter:Byte For counter = 0 To 9 Step 1 DrawText highscore[counter],10,10+counter*10 Next Flip Cls Wend Function f_write() Local counter:Byte Local file:tstream For counter = 0 To 9 Step 1 highscore[counter] = 100000 - counter*10000 Next file = WriteFile("highscore.dat") For counter = 0 To 9 Step 1 WriteLine file,highscore[counter] Next CloseFile(file) End Function Function f_read() Local counter:Byte Local file:tstream file = OpenFile("highscore.dat") For counter = 0 To 9 Step 1 highscore[counter] = Int(ReadLine(file)) Next CloseFile(file) End Function |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group