- INI-файли — це документи конфігурації, у яких зберігаються параметри програм і програм.
- Вони використовують просту структуру з розділами, ключами та значеннями для організації інформації.
- Вони поширені в конфігурації програмного забезпечення, налаштування ігор і автоматизації завдань.
- Їх можна читати і писати за допомогою різних мов програмування, таких як Pascal, PHP і Python.
Ласкаво просимо до нашої подорожі, щоб розгадати таємницю INI-файлів ! Якщо ви коли-небудь задавалися питанням, що вони собою являють або як їх ефективно використовувати, ви потрапили в потрібне місце. Ці файли можуть здаватися загадкою, але з правильною інформацією вони стають потужним інструментом у світі обчислювальної техніки та конфігурації програмного забезпечення. У цій статті ми детально розглянемо, що таке INI-файли, як вони працюють і як отримати від них максимальну користь.
Файли INI: що означають ці абревіатури?
Почнемо з самого початку. Що означає INI у файлах INI? Ця абревіатура розшифровується як «Ініціалізація ». Файли INI — це документи конфігурації, які широко використовуються у світі обчислювальної техніки для зберігання налаштувань та параметрів конфігурації програм і застосунків.
Що містять файли INI?
Файли INI містять ключову інформацію, яка дозволяє програмам і додаткам працювати належним чином. Ці файли можуть містити різноманітні дані, наприклад:
- Налаштування: значення, які визначають, як поводиться програма.
- Шляхи: Інформація про розташування файлів або ресурсів, необхідних для роботи програми.
- Налаштування користувача: Користувацькі налаштування, які вибирає користувач.
- Параметри інтерфейсу: Подробиці про дизайн і зовнішній вигляд інтерфейсу користувача.
Як структуровані файли INI?
Файли INI мають просту, але ефективну структуру. Зазвичай вони розділені на розділи, кожен зі своїм набором значень і налаштувань. Давайте розглянемо базовий приклад:
[Sección 1] Clave1=Valor1 Clave2=Valor2 [Sección 2] Clave3=Valor3
У цьому прикладі ми маємо два розділи, кожен зі своїми ключами та значеннями. Така структура полегшує організацію та пошук інформації у файлі.
Файли INI в дії
Тепер, коли ми маємо базове розуміння того, що таке файли INI, настав час дослідити, як вони використовуються в реальному світі та яку користь вони можуть вам принести.
конфігурація програмного забезпечення
Одним із найпоширеніших застосувань файлів INI є налаштування програмного забезпечення. Багато програм використовують ці файли для зберігання налаштувань користувача. Ви коли-небудь налаштовували параметри програми і задавалися питанням, де вони зберігаються? Відповіддю зазвичай є файл INI!
налаштування гри
Якщо ви ентузіаст відеоігор, ви, ймовірно, стикалися з файлами INI. Ці файли використовуються для налаштування параметрів гри, від якості графіки до параметрів керування. Ви можете налаштувати свій ігровий досвід, змінивши ці файли.
Автоматизація завдань
Файли INI також корисні для автоматизації завдань. Програми можуть читати та змінювати ці файли для виконання певних дій на запрограмованій основі. Це особливо корисно в середовищі корпоративного та системного адміністрування.
файли INI в Інтернеті
INI-файли не обмежуються настільними програмами. В Інтернеті вони використовуються в таких технологіях, як PHP, для зберігання конфігураційної інформації. Якщо ви працюєте у сфері веб-розробки, розуміння того, як ці файли працюють, може бути важливим.
Як користуватися файлами INI?
Тепер, коли ви знаєте, що таке файли INI і де вони використовуються, настав час дізнатися, як ви можете використовувати їх у своїх інтересах.
1. Визначте відповідний файл INI
Перше, що вам потрібно зробити, це знайти INI-файл програми або програми, яку ви хочете налаштувати. Зазвичай він знаходиться в каталозі встановлення програмного забезпечення.
2. Зробіть резервні копії
Перш ніж вносити зміни в файл INI, обов’язково створіть резервну копію вихідного файлу. Це дозволить вам відновити попередні налаштування, якщо щось піде не так.
3. Відкрийте файл INI
Скористайтеся простим текстовим редактором, наприклад Блокнотом у Windows, щоб відкрити файл INI. Переконайтеся, що в редакторі немає додаткового форматування, наприклад напівжирного або курсиву.
4. Обережно редагуйте
Внесіть у файл необхідні зміни, звертаючи увагу на синтаксис. Файли INI чутливі до регістру, тому вам потрібно бути точним.
5. Збережіть зміни
Після внесення змін збережіть файл INI та закрийте його. Перш ніж це зробити, переконайтеся, що відповідне програмне забезпечення закрито.
6. Протестуйте програму
Запустіть програму та перевірте, чи набули чинності зміни. Якщо все працює належним чином, ви успішно налаштували файл INI!
Додаткові поради
Ось кілька додаткових порад, щоб отримати максимальну віддачу від файлів INI:
- документація: Завжди звертайтеся до документації програми чи програми, щоб краще зрозуміти параметри, доступні у файлі INI.
- Коментарі: Ви можете додавати коментарі до файлу INI, поставивши перед рядками символ крапки з комою (;). Це допоможе вам запам’ятати мету кожного налаштування.
- Досвід: Не бійтеся експериментувати з налаштуваннями в файлі INI. Ви можете багато чому навчитися, спробувавши різні значення та подивившись, як вони впливають на програму.
Приклади читання та запису файлів INI
У наступних прикладах використовується звичайний файл INI (config.ini), який показано нижче:
[BaseDatos] Usuario=minombre Password=unaClave [Preferencias] Fondo=Blanco Color=Azul
1) Приклад у Free Pascal
Нижче наведено повний код для читання та запису файлу INI за допомогою Free Pascal
program fileIni;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes
{ you can add units after this }
, Sysutils, IniFiles;
const
ARCHIVO_CONFIG = 'config.ini';
var
Ini: TIniFile;
Valor: String;
begin
{ El método Create es el constructor de la clase, que recibe como parámetro
el nombre del archivo INI.}
Ini := TIniFile.Create(ARCHIVO_CONFIG);
{Para leer valores se especifica el nombre de sección y clave
en los métodos ReadString.}
// Leer valor de sección BaseDatos
Valor := Ini.ReadString('BaseDatos','Usuario','');
WriteLn('Usuario BD: ', Valor);
// Leer valor de sección Preferencias
Valor := Ini.ReadString('Preferencias','Fondo', '');
WriteLn('Color de fondo', Valor);
{Para escribir valores se indica sección y clave con WriteString
antes de guardar con UpdateFile.}
// Escribir valor en sección BaseDatos
Ini.WriteString('BaseDatos','Password','NuevaClave');
// Escribir valor en sección Preferencias
Ini.WriteString('Preferencias', 'Color', 'Verde');
Ini.UpdateFile;
Ini.Free;
end.
Цей код є програмою, написаною мовою Pascal, яка працює з файлами INI для налаштування. Ось коротке пояснення того, що він робить:
- Включає необхідні одиниці: Програма використовує одиниці
Classes,SysUtilsІIniFiles, які забезпечують функції, необхідні для роботи з файлами INI та іншими ресурсами. - Визначає константу
ARCHIVO_CONFIGякий містить назву INI-файлу, який буде використано, у цьому випадку "config.ini". - Оголошення змінної
IniтипуTIniFile. Ця змінна використовується для взаємодії з файлом INI. - Програма починається зі створення екземпляра
TIniFileназиватиIniз будівельникомCreate, передаючи назву INI-файлу ("config.ini") як параметр. - Тоді використовуйте метод
ReadStringdeIniдля читання значень з файлу INI. У цьому випадку зчитується два значення: перше з розділу «База даних» і ключа «Користувач», а друге з розділу «Налаштування» і ключа «Фон». Зчитані значення зберігаються в зміннійValorі відображаються на консолі. - Тоді використовуйте метод
WriteStringdeIniдля запису значень у файл INI. У цьому випадку в розділі «База даних» і ключі «Пароль» встановлюється новий пароль, а колір в розділі «Налаштування» і ключі «Колір» змінюється на «Зелений». - Потім викликається метод
UpdateFileщоб зберегти зміни, внесені у файл INI, на диск. - Нарешті пам'ять екземпляра звільняється.
Iniзакликаючи доIni.Free.
Коротше кажучи, ця програма використовується для читання та запису значень конфігурації у файл INI під назвою «config.ini» у певних розділах, а потім зберігає зміни, внесені у файл.
2) Приклад на PHP
Нижче наведено повний код для читання та запису файлу INI за допомогою PHP. Включіть клас і приклад використання в той самий сценарій, але ви можете розділити їх відповідно до найкращих практик програмування:
<?php
class ManejadorIni
{
private $filename;
private $contenido;
public function __construct($filename)
{
if (!file_exists($filename)) {
throw new Exception('El archivo no existe.');
}
$this->filename = $filename;
$this->contenido = parse_ini_file($filename, true);
if ($this->contenido === false) {
throw new Exception('No se pudo analizar el archivo INI.');
}
}
public function leer($seccion, $clave)
{
if (isset($this->contenido[$seccion]) && isset($this->contenido[$seccion][$clave])) {
return $this->contenido[$seccion][$clave];
}
return '';
}
public function escribir($seccion, $clave, $valor)
{
$this->contenido[$seccion][$clave] = $valor;
}
public function guardar()
{
$texto = "; Archivo INI generado por ManejadorIni\n";
foreach ($this->contenido as $sec => $cont) {
$texto .= "\n[$sec]\n";
foreach ($cont as $key => $val) {
$texto .= "$key=$val\n";
}
}
if (file_put_contents($this->filename, $texto) === false) {
throw new Exception('No se pudo guardar el archivo INI.');
}
}
public function __destruct()
{
$this->filename = null;
$this->contenido = null;
}
} // Aqui termina la Clase.
// Código para probar la Clase: ManejadorIni
try {
// Iniciar el manejador para un archivo INI específico
$manejador = new ManejadorIni('config.ini');
// Leer valores
$nombreUsuario = $manejador->leer('BaseDeDatos', 'usuario');
if (empty($nombreUsuario)) {
echo "No se pudo obtener el nombre de usuario desde el archivo INI.\n";
}
echo "Nombre de Usuario actual: " . $nombreUsuario . "<br>";
// Escribir valores
$manejador->escribir('BaseDeDatos', 'usuario', 'nuevoUsuario');
// Guardar cambios al archivo
$manejador->guardar();
} catch (Exception $e) {
// Manejo de excepciones
echo "Se ha encontrado un error: " . $e->getMessage();
}
?>
Цей код PHP визначає клас під назвою ManejadorIni який використовується для читання, зміни та збереження конфігураційних файлів у форматі INI. Ось основні функції коду:
- клас
ManejadorIniмає приватну власність$filename(для збереження імені файлу INI) і$contenido(для зберігання проаналізованого вмісту файлу INI). - У конструкторі класу
ManejadorIni, перевіряє, чи існує вказаний файл INI. Якщо він не існує, створюється виняток. Потім конструктор аналізує вміст INI-файлу за допомогою функціїparse_ini_fileі зберігає результат у властивості$contenido. Якщо функція синтаксичного аналізу не вдається, також створюється виняток. - Клас надає три основні методи:
leer($seccion, $clave): Дозволяє читати конкретне значення з розділу та ключа у файлі INI. Якщо розділ і ключ існують, поверніть значення; інакше повертає порожній рядок.escribir($seccion, $clave, $valor): дозволяє записати або змінити значення у файлі INI для певного розділу та ключа. Ця зміна виконується в пам’яті та не зберігається у файлі, доки не буде викликано метод.guardar().guardar(): Зберігає зміни, зроблені в пам'яті, до оригінального файлу INI. Перегляньте вміст, що зберігається в$this->contenidoі записує його назад у файл INI.
- Метод
__destruct()Він відповідає за очищення властивостей, коли примірник класу знищено. - За межами визначення класу наведено приклад використання:
- Створено екземпляр
ManejadorIniдля файлу "config.ini". - Значення ключа «користувач» зчитується з розділу «База даних» файлу INI.
- Якщо значення порожнє, відображається повідомлення про помилку.
- Значення «user» змінено на «newUser».
- Зміни зберігаються у файлі INI.
- Створено екземпляр
Код також обробляє винятки, тому, якщо виникають помилки під час читання, запису чи збереження файлу INI, вони перехоплюються та відображається відповідне повідомлення про помилку, а не спричиняє переривання програми.
ПРИМІТКА: Скрипт PHP не використовує розширений синтаксис PHP 7.x, оскільки він намагається бути сумісним з PHP 5.6 та PHP 7.
3) Приклад на Python
Нижче ми показуємо функціональність читання та запису у файл INI: config.ini за допомогою Python:
import configparser
# Crear un objeto ConfigParser
config = configparser.ConfigParser()
# Leer el archivo INI
config.read('config.ini')
# Leer valores del archivo INI
usuario_bd = config.get('BaseDatos', 'Usuario')
password_bd = config.get('BaseDatos', 'Password')
fondo = config.get('Preferencias', 'Fondo')
color = config.get('Preferencias', 'Color')
# Mostrar los valores leídos
print('Usuario BD:', usuario_bd)
print('Password BD:', password_bd)
print('Fondo:', fondo)
print('Color:', color)
# Escribir valores en el archivo INI
config.set('BaseDatos', 'Usuario', 'nuevo_usuario')
config.set('BaseDatos', 'Password', 'NuevaClave2')
config.set('Preferencias', 'Fondo', 'Red')
config.set('Preferencias', 'Color', 'Azul')
# Guardar los cambios en el archivo INI
with open('config.ini', 'w') as configfile:
config.write(configfile)
Програма Python використовує бібліотеку configparser для читання та запису у файл INI під назвою “config.ini”. Ось коротке пояснення того, що він робить:
- Імпортуйте бібліотеку
configparserдля роботи з файлами INI. - Створіть об'єкт
ConfigParserзванийconfig. - Прочитайте INI-файл за допомогою методу
readdeconfig. - Читає існуючі значення в INI-файлі для розділів «База даних» і «Налаштування» за допомогою методу
get. Потім виведіть ці значення на консоль. - Оновлює значення в файлі INI за допомогою методу
set. У цьому випадку змініть ім’я користувача та пароль у розділі «База даних», а також фон і колір у розділі «Налаштування». - Збережіть зміни в INI-файл за допомогою методу
writeі вихідний файл під назвою “config.ini”.
Коротше кажучи, програма дозволяє читати, змінювати та зберігати значення у файлі INI за допомогою бібліотеки configparser Python.
Висновок
Спочатку файли INI можуть здатися таємницею, але маючи правильну інформацію та трохи практики, ви станете експертом у їх використанні. Ці прості документи конфігурації відіграють вирішальну роль у налаштуванні програмного забезпечення, оптимізації ігор та автоматизації завдань. Тож не бійтеся увійти у світ файлів INI та почати використовувати їхній потенціал уже сьогодні!
Важливо пам'ятати, що існують також інші типи файлів конфігурації, які називаються XML-файлами , що використовуються в різних галузях обчислювальної техніки, таких як бази даних, обмін інформацією та конфігурація програм. XML — це розширювана мова розмітки, яка дозволяє структурувати дані та зберігати їх у форматі, читабельному як людьми, так і машинами. На відміну від традиційних файлів конфігурації у вигляді звичайного тексту, формат XML використовує теги та атрибути для визначення структури документа.
Якщо ви знайшли цей посібник щодо файлів INI корисним, не соромтеся поділитися ним з іншими ентузіастами комп’ютерів і технологій. Разом ми можемо спростити головоломку INI-файлів і зробити їх доступними для всіх. Поділіться знаннями та допоможіть іншим освоїти цей потужний інструмент налаштування!