Data ausner .Dat laden

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

ozzi789

Betreff: Data ausner .Dat laden

BeitragDi, Nov 27, 2007 20:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

Hab ein kleines "RPG" habe die Data in nem Dim.
Kann ich die Data nicht als .dat speichern und so auslesen ?
Sonst wird der Quell code nach 20 Level n unbrachbar Very Happy

Code: [AUSKLAPPEN]
Data 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,2
Data 2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,2
Data 2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,2
Data 2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2
Data 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
usw ....


MFG
OZ
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

Eingeproggt

BeitragDi, Nov 27, 2007 20:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du (wie ich annehme,) weißt, wie
ql:WriteFile
ql:WriteByte bzw ql:ReadByte
arbeiten und ein bisschen mit Schleifen umgehen kannst, sollte das kein Problem darstellen Wink

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

ozzi789

BeitragDi, Nov 27, 2007 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Schleifen Ja
Write File Nein

D.H hinter die Bücher ? Very Happy
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

FireballFlame

BeitragDi, Nov 27, 2007 22:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Ach was, Online-Hilfe reicht Wink
Ist eigentlich ganz einfach ^^
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit

ozzi789

BeitragMi, Nov 28, 2007 16:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn dat so is ...

Habe wirtbyte usw mir mal reingezogen Very Happy

Hab s noch nich geschekt.

Könnt jemand ein Beispiel bringen ?
(und erklären Embarassed )

Thx

MFG
OZ
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

Eingeproggt

BeitragMi, Nov 28, 2007 18:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Dim mapdata(10,10) ;Deine Map-Data, wie die auch immer aussieht^^

Writer=WriteFile("map.dat") ;Datei auf Festplatte erstellen und fürs Schreiben "öffnen"

For x=0 To 10
  For y=0 To 10
    WriteByte(Writer,mapdata(x,y)) ;Alles in die Datei schreiben
  Next
Next
CloseFile Writer ;Datei wieder schließen und "freigeben"


Ists so verständlich?

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

ozzi789

BeitragMi, Nov 28, 2007 18:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Jetz hats KLICK gemacht Razz

Und wenn ich jetzt diese .dat datei hab wie öffne ich diese (Laden)

mit readfile ?

Thx
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

Eingeproggt

BeitragMi, Nov 28, 2007 19:02
Antworten mit Zitat
Benutzer-Profile anzeigen
ReadFile kommt am Anfang, dann in der Schleife ReadByte (oder ähnliches) und wenn du sauber bleiben willst, wieder CloseFile.

Wichtig ist halt, dass du die Bytes in genau derselben Reihenfolge ausliest, wie du sie auch geschrieben hast. Das führt oft zu Fehlern. Weiters: Nicht mehr Bytes auslesen, als du geschrieben hast. Ich glaub, es kommt kein Fehler, ist aber einfach falsch. Und wenn du mehrere Write-Befehle (WriteBYte, WriteInt,...) verwendest, musst du auch noch auf die Reihenfolge dieser Write und dazugehörigen Read-Befehle achten.

Wenn du nicht ganz mitkommst, gibts dann wieder ein Bsp Wink
(Wobei in deinem Fall nur WriteByte genügen sollte. Das, was ich da erwähne, wird bei Types interessant Smile )

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

Silver_Knee

BeitragMi, Nov 28, 2007 19:11
Antworten mit Zitat
Benutzer-Profile anzeigen
closefile ist übrigens nichtnur zum spaß da. wer mal Repeat print readfile("/dev/null") forever gemacht hat wird feststellen: man kann max 512 Dateien gleichzeitig öffnen mit closefile ist das ganze ins unendliche erweiterbar wobei alle 512 streams der erste zahlenmäßig wiederkommt

ozzi789

BeitragMi, Nov 28, 2007 19:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Okay Very Happy Werds mir merken (closefile) .

Thx
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5
 

Gast

BeitragMi, Nov 28, 2007 20:10
Antworten mit Zitat
Data Liest du so Aus

Code: [AUSKLAPPEN]

DIm Map(20,18)
Input "Data-Level.dat"
ReadMap(20,18)

Function ReadMap(Levelbreite,Lovelhohe)
For Y = 1 To LevelHohe
    For = 1 to LevelBreite
         Read Map(X,Y)
    Next
Next
End Function


Damit 5 KAnnst du Data auslesen...

Wichtig:
Input muss VOR der Function ausgeführt worden sein.
Map(0,0) ist leer.
Für Große Maps empfehle ich dir Read-/WriteFile

ozzi789

BeitragMi, Nov 28, 2007 20:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke dat funtz Very Happy

Thx für die Schnelle Hilfe

MFG
OZ
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group