Speichern von Types und Dims

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Ana

Betreff: Speichern von Types und Dims

BeitragMo, Jun 22, 2009 20:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo zusammen,
versuch gerade einen Karteneditor zu machen und dafür ist es natürlich doch ganz gut die dinge auch dauerhaft zu speichern und vorallem dann auch wieder zu laden. Jetzt weiß ich nicht so wirklich wie ich das für mehre types und dim felder machen kann. Bisher sieht es so aus aber das klappt nicht und ist nicht vollständig. Also ich glaub schon das die sachen ordentlich gespeichert werden aber wie erstelle ich dann wieder types aus den informationen und wie werden die gespeichert? Werden die noch als types gespeichert oder als werte die dann wieder in neue Types eingetragen werden müssen?

Code: [AUSKLAPPEN]

Function Speichern()
dateiname$ =  writeFile (dateiname$)
If dateiname = 0 Then Return 0
For v.baum = Each baum
WriteInt(dateiname,v.baum\x)
WriteInt(dateiname,v.baum\y)
WriteInt(dateiname,v.baum\benutzbar)
WriteInt(dateiname,v.baum\breite)
WriteInt(dateiname,v.baum\hoehe)
WriteInt(dateiname,v.baum\image)
Next
CloseFile dateiname
End Function

Function Laden()
dateiname$ = readFile (dateiname$)
If dateiname = 0 Then Return 0
For v.baum = Each baum
v.baum = ReadInt(dateiname)
Next
CloseFile dateiname
End Function

Tankbuster

BeitragMo, Jun 22, 2009 20:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab die Funktionen mal berichtigt....
Du solltest ein bisschen mehr über die Grundlagen anschaun Wink

Code: [AUSKLAPPEN]
Function Speichern(F_dateiname$)
F_File =  writeFile (F_dateiname$)
For v.baum = Each baum
WriteInt(F_File,v\x)
WriteInt(F_File,v\y)
WriteInt(F_File,v\benutzbar)
WriteInt(F_File,v\breite)
WriteInt(F_File,v\hoehe)
WriteInt(F_File,v\image)
Next
CloseFile F_File
End Function

Function Laden(F_dateiname$)
F_File = readFile (F_dateiname$)
While Not Eof(F_File)
v.baum = New baum
v\x = ReadInt(F_file)
v\y = ReadInt(F_file)
v\benutzbar = ReadInt(F_file)
v\breite = ReadInt(F_file)
v\hoehe = ReadInt(F_file)
v\image = ReadInt(F_file)
Wend
CloseFile F_File
End Function
Twitter
Download Jewel Snake!
Windows|Android

Xeres

Moderator

BeitragMo, Jun 22, 2009 20:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Zum laden musst du mit new einen Type erstellen und alle Fields einzeln mit Readint mit Werten befüllen.
Für Arrays macht es sich vielleicht sinn als erstes deren Größe zu speichern, damit du die richtige Anzahl von Werten auslesen kannst.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Ana

BeitragMo, Jun 22, 2009 20:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielen dank euch beiden, und ja im grunde müsste ich das tun, aber ich hab aus einem buch gelernt und das streift viele, doch sehr wichtige themen nur sehr flüchtig und lässt viel offen...

Edit:

Und wie sieht das ganz für Dim-felder aus? Ich dachte mir das wie folgt nur kommt dann die Meldung Array out of bound...
Fürs Speichern :
Code: [AUSKLAPPEN]

WriteInt(F_file,maphoehe)
WriteInt(F_file,mapbreite)

For i = 0 To maphoehe
   For j = 0 To mapbreite
   WriteInt(F_file,mapwerte(j,i))
   Next
Next


Fürs Laden
Code: [AUSKLAPPEN]

maphoehe = ReadInt(F_file)
mapbreite = ReadInt(F_file)

For i = 0 To maphoehe
   For j = 0 To mapbreite
   mapwerte(j,i) = ReadInt(F_file)
   Next
Next

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group