Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Другие языки > Записи/чтение в файл


Автор: GQU 7.8.2015, 21:39
Это код на языке PAWN
Записывает в test.ini: Data for recordM_DAY_BEFORE = Позавчера
и этот бред выводится в консоль
Причем тут Позавчера вообще не понял
Это из-за того, что неправильно написал режим для одновременного чтения и записи("r+"), как его правильно написать?
Цитата


Код

        #include <amxmodx>
        public plugin_init() {
           
            new fileid = fopen("addons/amxmodx/configs/test.ini","r+")
         
             
                new buf1[16] = {"Data for record"}
                fputs(fileid,buf1)
             
                new buf2[16]  
                fgets(fileid,buf2,charsmax(buf2))
                server_print("^n buf2 = %s ^n",buf2)
               
            fclose(fileid)
         
        }

Автор: Lipetsk 7.8.2015, 22:27
Вы после записи остались в конце файла. А читать нужно с начала. Переоткройте файл перед чтением

Автор: GQU 7.8.2015, 22:57
Что то думал разобрался, но опять не то, в файле пусто
Код

        #include <amxmodx>
        public plugin_init() {
           
            new fileid = fopen("addons/amxmodx/configs/test.ini","r+")
         
             
            new buf1[16] = {"Per4iK!"}
            fputs(fileid,buf1)
             
            fileid = fopen("addons/amxmodx/configs/test.ini","r") 
            new buf2[16]  
            fgets(fileid,buf2,charsmax(buf2))
            server_print("^n buf2 = %s ^n",buf2)
               
            fclose(fileid)
         
        }



все понял
так надо
Код

        #include <amxmodx>
        public plugin_init() {
           
            new fileid = fopen("addons/amxmodx/configs/test.ini","r+")
         
             
            new buf1[16] = {"Per4iK!"}
            fputs(fileid,buf1)
            fclose(fileid)
             
            fileid = fopen("addons/amxmodx/configs/test.ini","r") 
            new buf2[16]  
            fgets(fileid,buf2,charsmax(buf2))
            server_print("^n buf2 = %s ^n",buf2)
               
            fclose(fileid)
         
        }

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)