Welkom Samp-World
Каталог файлов

Разделы

[GM]Gamemodels [15]
моды для samp
[FS]FilterScripts [3]
[INC]Include [1]

Мини-чат

200

Наш опрос

Сайт будем обновлять

Результат опроса Результаты
Все опросы нашего сайта Архив опросов
Всего ответов: 3
Всего голосовало: 3
Обсудить на форуме

Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Главная » Файлы » SA-MP » [INC]Include

Скачать [INC] mxINI бесплатно
13.06.2011, 11:00
Что это такое
  • Это релиз инклуд-файла с инструментами для самого быстрого чтения/записи INI файлов. Более того, этот инклуд не нуждается в настройке. Вы подключаете его в ФС или МОД и можно сразу читать/записывать INI файлы.


Преимущества
  • Свободный формат
    Во-первых, оформлять ваши INI файлы вы можете как угодно - криво/ровно, с отступами/без, с комментами/без, с любыми пробельными символами вокруг =. И это все никак не влияет на чтение/запись. Нет никаких лимитов на длину ключей или значений. Ключи и значения можно писать даже по-русски. В имени ключа/значении можно использовать любые символы кроме \r и \n. Пробелы и знаки табуляции вокруг имени ключа, вокруг символа = и перед текстовым значением считаются отступами. В одной строке вы можете поместить любое кол-во пар ключ/значение, включая всевозможные варианты оформления.

  • Свободное расположение комментов
    Чтобы увеличить скорость чтения, считается, что любые строки, где нет символа = это комментарии. Также комментарием может быть любой текст, все зависит от вашего форматирования.

  • Скорость
    Перед тем как читать что-то из INI файла, его также как и остальные файлы нужно открыть. При открытии весь файл копируется в ОЗУ вместе с именем. Остальные операции чтения/записи производятся непосредственно в ОЗУ. Именно поэтому все это происходит очень быстро. Если контент файла в ОЗУ был изменен, при закрытии он будет записан на диск. 

    Еще 1 плюс, который ранее в скриптинге не применялся - это сжатое хранение контента файла, что в 4 раза меньше, чем обычный формат. Скорость также достигается за счет отсутствия дополнительных функций, которые могли бы использоваться в функциях чтения/записи, а также за счет использования только встроенных функций скриптинга.


Инструменты

  • ini_createFile ( "путь/к/файлу.ini""Содержимое файла по умолчанию" )
  • ini_openFile ( "путь/к/файлу.ini" )
  • ini_closeFile ( ИД_открытого_файла )

  • ini_setString ( ИД_открытого_файла"имя ключа""текстовое значение" )
  • ini_setInteger ( ИД_открытого_файла"имя ключа"123456 )
  • ini_setFloat ( ИД_открытого_файла"имя ключа"3.1416 )

  • ini_getString ( ИД_открытого_файла"имя ключа", returnValue )
  • ini_getInteger ( ИД_открытого_файла"имя ключа", returnValue )
  • ini_getFloat ( ИД_открытого_файла"имя ключа", returnValue )

  • ini_removeKey ( ИД_открытого_файла"имя ключа" )


Примеры
Code:
new iniFile = ini_createFile ( "test4268.ini" );

if ( iniFile < 0 )
iniFile = ini_openFile ( "test4268.ini" );

if ( iniFile >= 0 )
{
new returnString[32], returnNumber, Float: returnFloat;

ini_setString  ( iniFile, "ключ со строкой", "текстовое значение" );
ini_setInteger ( iniFile, "ключ с числом",   123456 );
ini_setFloat   ( iniFile, "ключ с дробью",   3.1416 );

ini_removeKey  ( iniFile, "ключ с числом" );

ini_getString  ( iniFile, "ключ со строкой", returnString );
ini_getInteger ( iniFile, "ключ с числом",   returnNumber );
ini_getFloat   ( iniFile, "ключ с дробью",   returnFloat );


ini_closeFile  ( iniFile );

printf ( "\n `ключ_со_строкой` = `%s`,\n `ключ_с_числом` = `%d`,\n `ключ_с_дробью` = `%f` \n",
returnString, returnNumber, returnFloat );
}
else print( "\n Не удалось открыть INI файл \n" );



Тест
ТЕСТ скорости 2-х библиотек, которые ориентированы исключительно
на чтение/запись в файлы INI формата.

Тестируются:  Dini, mxINI

Для тестирования из библиотек будут использоваться только самые быстрые
функции чтения/записи для строк, т.к. скорость преобразования типов зависит
не от инструментов библиотеки, а от встроенных функций скриптинга.

Каждой библиотеке нужно будет создать и открыть INI файл, записать в него 100 ключей,
прочесть значения этих ключей, закрыть файл.

Это результаты выполнения вышеуказанных операций. Сравните их.

1 секунда = 1000 милисекунд (мсек)

Категория: [INC]Include | Добавил: Acson_Best
Просмотров: 3428 | Загрузок: 21 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]