Szerző Téma: 50 változó mentése/kiolvasása a leggyorsabb módon, hogyan?  (Megtekintve 576 alkalommal)

Nem elérhető SnooP

  • 1798
  • SnooP
    • Profil megtekintése
50 változó mentése/kiolvasása a leggyorsabb módon, hogyan?
« Dátum: 2014. Szeptember 07. - 23:33:17 »
0 Show voters
Sziasztok.
Az volna a kérdésem, hogy van 50 boolean változó amit el szeretnék menteni. Na már most a kérdésem az volna, hogy változtatna-e a kiolvasási/betöltési sebességen az, hogy minden változónak az adott fájlban egy új sort hozok létre és azt olvasom ki vagy egy sorba írom egymás után az adott boolean adatokat és utána pedig splitelem az igaz hamis értékeket? Esetleg ilyen variációnál melyik a leggyorsabb metódusa az adatok mentésének?Válaszokat elõre is köszönöm :)
« Utoljára szerkesztve: 2014. Október 19. - 16:35:19 írta Flash »

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
50 változó mentése/kiolvasása a leggyorsabb módon, hogyan?
« Válasz #1 Dátum: 2014. Szeptember 08. - 06:14:36 »
+1 Show voters
spliteld, de sscanf-al még gyorsabb lenne . :)

Nem elérhető SnooP

  • 1798
  • SnooP
    • Profil megtekintése
50 változó mentése/kiolvasása a leggyorsabb módon, hogyan?
« Válasz #2 Dátum: 2014. Szeptember 08. - 12:09:38 »
0 Show voters
Igaz, igaz :D Esetleg ennél van gyorsabb módszer? :D

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
50 változó mentése/kiolvasása a leggyorsabb módon, hogyan?
« Válasz #3 Dátum: 2014. Szeptember 08. - 20:10:12 »
0 Show voters
nincs. de am érted azt, hogy sscanf-al hogy kell?

Nem elérhető SnooP

  • 1798
  • SnooP
    • Profil megtekintése
50 változó mentése/kiolvasása a leggyorsabb módon, hogyan?
« Válasz #4 Dátum: 2014. Szeptember 09. - 12:11:56 »
0 Show voters
Hát lecsatlakozásnál formatálok egy stringet
 
  new sorok[256];
   if(dfile_FileExists(file[playerid]))
{
dfile_Open(file[playerid]);
  format(sorok, sizeof(sorok),\"1%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d\",
  PlayerInfo[playerid][A1],
PlayerInfo[playerid][A2],
PlayerInfo[playerid][A3],
PlayerInfo[playerid][A4],
PlayerInfo[playerid][A5],
PlayerInfo[playerid][A6],
PlayerInfo[playerid][A7],
PlayerInfo[playerid][A8],
PlayerInfo[playerid][A9],
PlayerInfo[playerid][A10],
PlayerInfo[playerid][A11],
PlayerInfo[playerid][A12],
PlayerInfo[playerid][A13],
PlayerInfo[playerid][A14],
PlayerInfo[playerid][A15],
PlayerInfo[playerid][A16],
PlayerInfo[playerid][A17],
PlayerInfo[playerid][A18],
PlayerInfo[playerid][A19],
PlayerInfo[playerid][A20],
PlayerInfo[playerid][A21],
PlayerInfo[playerid][A22],
PlayerInfo[playerid][A23],
PlayerInfo[playerid][A24],
PlayerInfo[playerid][A25],
PlayerInfo[playerid][A26],
PlayerInfo[playerid][A27],
PlayerInfo[playerid][A28],
PlayerInfo[playerid][A29],
PlayerInfo[playerid][A30],
PlayerInfo[playerid][A31],
PlayerInfo[playerid][A32],
PlayerInfo[playerid][A33],
PlayerInfo[playerid][A34],
PlayerInfo[playerid][A35],
PlayerInfo[playerid][A36],
PlayerInfo[playerid][A37],
PlayerInfo[playerid][A38]
);
dfile_WriteInt(\"Achievementek\", sorok);
dfile_CloseFile();
return 1;
// Csak ez nem mûködik sajnos :\\
}
 

 
Felcsatlakozásnál pedig unformatolom és kiolvasom belõle a dolgokat.


Csak a hiba az az, hogy a dfile valamiért nem képes ennyi szám leírására egy fileban, vagy tag tag mismatchot add vagy pl ha le akarnék írni egy számot 38 nullával (amennyi a változók száma) csak simán egy nullát ír. Ha azt kérdeznéd, hogy az 1-es miért van elõl az azért, hogy ne érzékelje az egész számsort csak egy nullának mert ugyebár (0000000000000000000 = 0) hanem töltse be a számsort.
Még megpróbálkozok ma azzal, hogy létrehozok pl 5 sort felosztva a számokat, máskülönben nem tudom sajnos mi lehet :\\


Te hogy gondoltad ezt az egész dolgot?

Dupla hozzászólás automatikusan összefûzve. ( 2014. Szeptember 10. - 15:31:03 )

Megoldottam, zárok.
« Utoljára szerkesztve: 2014. Szeptember 10. - 15:31:03 írta RusH. »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal