Probleme mit Openfile

Previous topic - Next topic

Derb

Ich habe zwei Funktionen die ich Testhalber auf die Notwendigsten Dinge Kastriert habe. Die liest die Daten ein und die andere schreibt sie. Die Entstandene Datei ist trotz vorhandener Werte 0 KB groß und beim Lesen der Daten schmeißt mich der Compiler ohne Fehlermeldung aus dem Programm.

Was mach ich falsch???


Quote
// Diese Funktion Liest die Daten einer Map
FUNCTION loaddata:
   IF OPENFILE (1,mapname$+".map",0)
      //READWORD 1,MaxTX;READWORD 1,MaxTY;READWORD 1,TS
      // FILESEEK 1,100,0 // Ab Pos 100 folgen die Map Infos
      FOR i=0 TO 80
         FOR ii=0 TO 80
            READWORD 1,info0%
            READWORD 1,info1%
            READWORD 1,info2%
            quad[ii]
  • =info0%
                quad[ii][1]=info1%
                quad[ii][2]=info2%           
             NEXT
          NEXT
       CLOSEFILE 1
       ENDIF
    ENDFUNCTION



    // Diese Funktion Speichert die Daten einer Map
    FUNCTION savedata:
       IF OPENFILE (1,mapname$+".map",0)
          //WRITEWORD 1,MaxTX;WRITEWORD 1,MaxTY;WRITEWORD 1,TS
          // FILESEEK 1,100,0 // Ab Pos 100 folgen die Map Infos
          FOR i=0 TO 80
             FOR ii=0 TO 80
                info0%=quad[ii]

    •             info1%=quad[ii][1]
                  info2%=quad[ii][2]       
                  WRITEWORD 1,info0%
                  WRITEWORD 1,info1%
                  WRITEWORD 1,info2%
               NEXT
            NEXT
         CLOSEFILE 1
         ENDIF
      ENDFUNCTION


BumbleBee

Was mir gleich auffällt. Du machst zweimal schreiben:

Code (glbasic) Select

  OPENFILE (1,mapname$+".map",0)

 
Die 0 oder False hinten ist schreiben. 1 oder True ist lesen.

Also für schreiben:
Code (glbasic) Select

  OPENFILE (1,mapname$+".map",0)


und für lesen:

Code (glbasic) Select

  OPENFILE (1,mapname$+".map",1)



Steht aber in der Hilfe. ;)


Cheers
The day will come...

CPU Intel(R) Core(TM) i5-3570k, 3.4GHz, AMD Radeon 7800 , 8 GB RAM, Windows 10 Home 64Bit

Derb

#2
Alles klar

Das kommt davon wenn man den ersten code kopiert und beim nächsten wieder einfügt... das habe ich übersehen obwohl es mir klar war... Danke Dir für die Hilfe.

Es funzt mittlerweile optimal...