fwrite

Материал из Pro-Pawn Wiki
Перейти к: навигация, поиск

Описание:

Записывает информацию в файл в текстовом виде.

Параметры:

(File: handle, const string[])
File: handle Хендл открытого файла.
const string[] Строка для записи в файл.


Возвращаемое значение:

Количество символов, записанных в файл.

Bug.png
Баг Pawn
Попытка передать функции неправильный хендл (т.е. не возвращённый функциями fopen() или ftemp(), либо уже закрытый с помощью fclose()) приводит к падению сервера.


Bug.png
Баг Pawn
Функция неправильно работает с упакованными строками (вместо них в файл записываются мусорные данные).
При записи неупакованных строк национальные символы (например, символы кириллицы) записываются неправильно - в таких случаях следует записывать строку посимвольно с помощью функции fputchar() (см. пример ниже).


Info rhombus.png
Примечание
Неупакованные строки записываются в кодировке UTF-8.


Пример использования:

main()
{
    // Создадим пустой файл и запишем в него строку
    new File: f = fopen("1.txt", io_write);
    fwrite(f, "abcd");

    static const text[] = "абвг";
    // fwrite() неправильно записывает символы кириллицы.
    // Запишем строку с помощью fputchar(), указав последним
    // аргументом false для записи в ASCII вместо UTF-8.
    for (new i = 0; text[i] != '\0'; ++i)
        fputchar(f, text[i], false);

    fclose(f);
}


См. также: