PDA

Просмотр полной версии : [Native] fwrite



L0ndl3m
28.05.2014, 10:18
fwrite
Записывает данные в открытый файл.

Параметры:

(File: handle, string[])

handle - ID идентификатора открытого файла (был указан при открытии файла (fopen (http://pro-pawn.ru/showthread.php?9005)))
string - записываемые данные (текст)


Возвращаемые значения:
Функция ничего не возвращает.

Примечание: Если файла, в который записывается текст не существует, будет краш сервера.

Пример использования (команда взятия джет-пака):


CMD:jp(playerid, params[]) // if(strcmp(cmdtext, "/jp", true, 3) == 0)
{
if(IsPlayerAdmin(playerid) == 0)
return SendClientMessage(playerid, -1, "Вы должны быть администратором.");

SetPlayerSpecialAction(playerid, 2);

new
File: file = fopen("AdminLog.txt", io_append)
// Открытие в режиме дозаписи
// (если кто-то ранее вводил эту команду, предыдущие логи должны сохраниться)
;

if(file != File: 0)
{
static const
fmt_str[] = "Администратор %s (%d) использовал Jet-Pack."
// Выводимая строка в чат
// (возможно, не понятные на ваш взгляд символы будут заменены функцией format,
// которая использована ниже
;

new
str[sizeof(fmt_str) - 2 + MAX_PLAYER_NAME - 2 + 3]
// Создание массива для форматируемого текста,
// с точным подсчётом ячеек,
// символы из строки fmt_str, будут храниться в каждой ячейке массива str
;

GetPlayerName(playerid, str, sizeof(str)); // Получение никнейма игрока
format(str, sizeof(str), fmt_str, str, playerid);
// Форматирование строки fmt_str
// (вместо %s и %d теперь будут никнейм игрока и его ID)
fwrite(file, str); // Запись в открытый файл (file) сформатированной строки (str)
fclose(file); // Закрытие файла (обязательно закрывать после использования файла)

return SendClientMessageToAll(-1, str); // Вывод всем игрока сформатированной строки белым цветом
}
return 1;
}



Автор статьи: Londlem (http://pro-pawn.ru/member.php?2057-Londlem)

Специально для: Pro-Pawn.Ru (http://pro-pawn.ru)

Копирование данной статьи без разрешения автора запрещено!