hlmod.hu
https://hlmod.hu/

Beolvasás fájlból HIBA
https://hlmod.hu/viewtopic.php?f=10&t=28597
Oldal: 1 / 1

Szerző:  egyjatekos0204 [2017.12.30. 20:14 ]
Hozzászólás témája:  Beolvasás fájlból HIBA

Az első 1-es kiírásig eljut. Utána eltűnik, se nem jön ki végén, se nem megy bele az elágazásba. MÉGIS HOVA A FÉSZKES FENÉBE TŰNIK?! :evil:
Kód:
public beolvasas(id)
{   
   
   //Lekérjük a config mappa elérési útját.
   new path[32]
   get_configsdir(path,charsmax(path)) //Beleraktuk a path változóba az elérési utat
   
   //Beállítjuk a fájlt.
   format(path,charsmax(path),"%s/sample.txt",path)
   client_print(id,print_chat,"1");
   //Megnézzük létezik-e
   if(file_exists(path))
   {
      // sz = string
      new szLineData[128], iLine;
      client_print(id,print_chat,"1");
      //Megnyitjuk a fájlt.
      client_print(id,print_chat,"2222");
      new file = fopen(path,"rt");
      client_print(id,print_chat,"1");
      //Megnézzük meg tudtuk e nyitni, ha nem akkor megállunk.
      if(!file) return
      client_print(id,print_chat,"1");
      //Amíg nincs vége
      while(!feof(file))
      {
         //Olvassuk a sorokat
         fgets(file,szLineData, charsmax(szLineData))
         client_print(id,print_chat,"2");
         //Az üres sorokat kitöröljük hogy ne kapjunk agyfaszt
         replace(szLineData,charsmax(szLineData),"^n","")
         client_print(id,print_chat,"3");
         //Ha komment vagy üres sor akkor mehetünk a következőre
         if(szLineData[0] == ';' || !szLineData[0]) continue;
         client_print(id,print_chat,"4");
         //Ha nem komment vagy üres sor akkor el kell mentenünk
         //A globális változóba elmentjük a beolvasottat.
         g_szSample[iLine] = szLineData
         //Növeljük 1-el
         iLine++;
         sorok++;
         client_print(id,print_chat,"5");
      }
      //Aztán ha lefutott akkor bezárjuk
      fclose(file)
      set_hudmessage(0, 255, 0, -1.0, -1.0)
      show_hudmessage(id, "%s megaszalom nyad",g_SteamID)
   }
   set_hudmessage(0, 255, 0, -1.0, -1.0)
      show_hudmessage(id, "%s megaszalom nyad",g_SteamID)
   feldarabolas(id);
   
}

Szerző:  makaidav [2018.02.09. 20:09 ]
Hozzászólás témája:  Re: Beolvasás fájlból HIBA

Szia! Tetszettek (//) kommentedben leírt szövegek pl:
egyjatekos0204 írta:
//Az üres sorokat kitöröljük hogy ne kapjunk agyfaszt


Tehát itt a megoldás a problémára:
Egy másik funkcióban kitudod íratni a változót.
pl a második sorban lévőt:
g_valtozo[2]

  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. #define file "addons/amxmodx/configs/teszt.txt"
  5.  
  6. new g_valtozo[128][256]
  7.  
  8. public plugin_init() {
  9.     register_plugin("Plugin", "Version", "author")
  10.     readtxtfile()
  11. }
  12.  
  13.  
  14. public readtxtfile() {
  15.     if (file_exists(file))
  16.     {
  17.     new vadatok[33], valtozo[256], hosszusag, sorok
  18.     while (read_file(file, sorok, vadatok, charsmax(vadatok), hosszusag) != 0)
  19.     {
  20.     if (sorok > charsmax(g_valtozo[]))
  21.     break
  22.     parse(vadatok, valtozo, charsmax(valtozo))
  23.     if (valtozo[0] == ';' || !valtozo[0])
  24.     {
  25.         sorok++
  26.         continue
  27.     }
  28.     g_valtozo[sorok] = valtozo
  29.     sorok++
  30.     }
  31.     }
  32. }


  1. ;
  2. "első sor"
  3. "második sor"
  4. "harmadik sor"
  5. ;

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/