Инфо из file.inc:
/* Returns a file size in bytes if flag is set to 0.
* When flag is set to 1 returns number of lines in the file,
* and when flags is 2, function returns 1 if the file ends
* with line feed. If file doesn't exist returns -1. */
native file_size(const file[], flag=0);
Синтаксис:
file_size ( const file[], [ flag ] )
- const file[] - Имя файла
- [ flag ] - Флаг:
- Если флаг 0, то будет получен размер в байтах.
- Если флаг 1, то количество строк в файле.
- Если флаг 2 и файл заканчивается на пустую строку будет возвращена 1. Если файл не существует -1
- Если флаг 0, то будет получен размер в байтах.
Тип функции:
Native
Пример:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "[file.inc] file_size"
#define VERSION "1.0"
#define AUTHOR "Admin"
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
//Создание файла с текстом
write_file("NewName.txt","My Firest Text Hellow Word 1",0)
write_file("NewName.txt","My Firest Text Hellow Word 2",1)
//Размер файла в байтах
server_print("File size: %d",file_size("NewName.txt",0))
//Количество линий в файле
server_print("Lines in file: %d",file_size("NewName.txt",1))
//Файл заканчивается на пустую строку или нет
server_print("XZ file: %d",file_size("NewName.txt",2))
//Если файл не существует
server_print("No file: %d",file_size("NewNameNOFILE.txt",0))
}
Описание:
Из синтаксиса вы уже поняли что функция боле функциональна чем просто получить размер файла, она способна получить размер файла в байтах, количество строк в файле и даже на что заканчивается файл, а если файла не существует то тоже не выдавать ошибку, а вернуть соответствующее значение.
В приведенном примере рассматриваются все 4 возможных варианта работы функции.
Что бы не гадать есть у вас какой то файл или нет, в начале будет создан файл NewName.txt с двум почти одинаковыми строками, далее работа будет производиться именно с ним. После перезагрузки сервера, в его консоль будет выведено 4 текстовых сообщения о файле в том же порядке что и флаги в описании синтаксиса, вот результат работы плагина на моем сервере для тестирования плагинов:
File size: 60
Lines in file: 3
XZ file: 1
No file: -1
У вас должно получиться тоже самое.Lines in file: 3
XZ file: 1
No file: -1