Воскресенье, 18.01.2026, 23:02
Добро пожаловать: Гость                                                                                        Уважаемые незарегистрированные гости, регистрируйтесь, у зарегистрированных пользователей больше возможностей на сайте!
Главное меню сайта
Мини-чат
Опросы

Оцените сайт
1. Отлично
2. Хорошо
3. Плохо
4. Неплохо
Всего ответов: 8
Скачать GTA San Andreas

Статистика








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


Сегодняшние посетители



Зарегистрировано на сайте:
Всего: 32
Новых за месяц: 0
Новых за неделю: 0
Новых вчера: 0
Новых сегодня: 0
Из них:
Пользователей: 30
Проверенных: 0
Соклановцев_SDR: 0
Хелперов сервера: 0
Младших Администраторов сервера: 0
Администраторов сервера: 0
Старших Администраторов сервера: 0
Главных Администраторов проекта: 1
Из них:
Парней: 31
Девушек: 1
Главная страница » Файлы » Файлы для SA-MP » Инклуды

[INC] mxINI

Уважаемые гости, чтобы скачивать файлы с нашего сайта зарегистрируйтесь или авторизуйтесь.
04.07.2016, 16:38


Что это такое?
Это релиз инклуд-файла с инструментами для самого быстрого чтения/записи 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 милисекунд (мсек) 

 

Автор: MX_Master

Категория: Инклуды | Добавил: [SDR]_Ro[n]ni
Просмотров: 353 | Загрузок: 1 | Рейтинг: 0.0/0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск по сайту
Донат:
Профиль

Сегодня: 18.01.2026

Здравствуйте гость!
Зарегистрируйтесь или авторизуйтесь!
Наша группа ВКонтакте



Мини-софт

        

        

        

Время



Календарь
Наша кнопка







Радио

© Официальный cайт проекта Street Drift Racers | 2011-2019 | Основатели проекта: [SDR]_Ro[n]ni • Forin