fwrite
Материал из Pro-Pawn Wiki
Описание:
Записывает информацию в файл в текстовом виде.
Параметры:
(File: handle, const string[]) |
File: handle | Хендл открытого файла. |
const string[] | Строка для записи в файл. |
Возвращаемое значение:
Количество символов, записанных в файл.
Баг Pawn |
Попытка передать функции неправильный хендл (т.е. не возвращённый функциями fopen() или ftemp() , либо уже закрытый с помощью fclose() ) приводит к падению сервера.
|
Функция неправильно работает с упакованными строками (вместо них в файл записываются мусорные данные).
При записи неупакованных строк национальные символы (например, символы кириллицы) записываются неправильно - в таких случаях следует записывать строку посимвольно с помощью функции fputchar() (см. пример ниже).
|
Примечание |
Неупакованные строки записываются в кодировке 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);
}
{
// Создадим пустой файл и запишем в него строку
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);
}
См. также: