Cómo instalar el archivo ini. ¿Qué son los archivos INI y para qué sirven?

Para Haskell. Entonces decidí que es mejor dividir el artículo en 3 partes. En la primera parte, le mostraré cómo escribir una gramática libre de contexto para describir el contenido de un archivo ini.

archivos ini

Los archivos con la extensión ini están muy extendidos no solo en el mundo de Windows, sino también en otros sistemas (por ejemplo, php.ini). El formato del archivo ini es muy simple: el archivo está dividido en secciones, cada sección puede contener un número arbitrario de entradas de la forma "parámetro=valor". Los nombres de los parámetros en diferentes secciones pueden ser iguales.
[sección 1]
parámetro1=valor1
parámetro2=valor2

[sección 2]
parámetro1=valor1
parámetro2=valor2

Cada parámetro se puede abordar a través de un nombre de sección y un nombre de parámetro: algo así como "section_1"."param2" .

Los archivos INI tienen comentarios, líneas que comienzan con ";".

Construyendo gramática

Intentemos describir este formato como una gramática libre de contexto en notación Backus-Naur extendida (espero que quede claro incluso para aquellos que no están familiarizados con ella).

Describamos qué es un archivo ini. Para ello, describiremos todas las construcciones desde las más complejas (en realidad el propio fichero ini) hasta las más sencillas (lo que es un identificador). Cada una de estas construcciones está asociada con una designación especial ( no terminal) que se define en términos de otros no terminales y símbolos regulares (terminales), que mencionaré
poner entre comillas.

  • Los datos del archivo ini (inidata) contienen varias secciones (las llaves significan repetición cualquier número de veces).
    inidata = (sección) .
  • Una sección consta de un nombre de sección encerrado entre corchetes, seguido de varias entradas (parámetros) en la siguiente línea.
    sección = "[", ident, "]", "\n", (entrada) .
  • La entrada consta del nombre del parámetro, el signo "=", el valor del parámetro y termina con el final de la línea.
    entrada = ident, "=", valor, "\n" .
  • Definamos qué es un identificador: todo lo que consta de letras, números o signos "_.,:()()-#@&*|" (en realidad, puede haber otros personajes).
    ident = (letra | dígito | "_" | "." | "," | ":" | "(" | ")" | "(" | ")" | "-" | "#" | "@" | "&" |"*" | "|") .

    Esta definición no es del todo correcta, porque El identificador debe tener al menos un carácter. Vamos a cambiarlo así:

  • Ahora definamos cuál es el valor: todo excepto el final de la cadena (por brevedad, tuve que expandir la notación)
    valor = (no "\n") .
Queda por tener en cuenta que a algunos analizadores / personas les gusta poner espacios extra y líneas vacías.
Para hacer esto, necesitamos introducir dos no terminales más: caracteres de espacio en blanco usados ​​en la cadena y solo caracteres de espacio en blanco.

Los espacios pueden estar casi en cualquier lugar. Así que corrijamos un poco la gramática:
inidata = espacios, (sección) .
sección = "[", ident, "]", stringSpaces, "\n", (entrada) .
entrada = ident, stringSpaces, "=", stringSpaces, value, "\n", espacios .
ident = identChar, (identChar) .
identChar = letra | digitales | "_" | "." | "," | ":" | "(" | ")" | "(" | ")" | "-" | "#" | "@" | "&" |"*" | "|" .
valor = (no "\n") .
stringSpaces = (" " | "\t") .
espacios = (" " | "\t" | "\n" | "\r") .

Eso es básicamente todo lo que concierne a la gramática =).

Alguien debe haber notado que no dije nada sobre los comentarios. No lo olvidé: es más fácil cortarlos con "asas" =) (como ejercicio, puede corregir la gramática para que tenga en cuenta los comentarios).

Importante: Hice un poco de trampa y construí la gramática para que no hubiera recursión izquierda en ella. Ambas bibliotecas que estoy considerando construir

Muy a menudo, especialmente en proyectos grandes, es necesario guardar algunas configuraciones del programa para aplicarlas más tarde al recargar. Imagine esta situación: escribió un programa para un cliente. Lo lanzó, y apareció en el centro de la ventana, como habías planeado. Sin embargo, esto le pareció un inconveniente, y lo movió hacia un lado y redujo el tamaño de la ventana para trabajar con alguna otra aplicación en paralelo. Todo está bien, el programa hace su trabajo y el usuario está satisfecho. Sin embargo, cuando vuelva a cargar el programa al día siguiente, volverá a estar centrado en la pantalla y tendrá sus dimensiones originales. El usuario nuevamente tendrá que moverlo hacia un lado y reducir el tamaño del formulario. ¿Un poco? Sin embargo, es a partir de esas tonterías que se forma una opinión sobre un programador, y si esta opinión es mala, ¡no tendrá clientes! El programador debe proporcionar en su programa todos los requisitos y deseos del usuario, incluso aquellos que él mismo aún no conoce. Bueno, dime, ¿cómo puede saber el usuario que ordenó el programa que el formulario puede ocupar una posición diferente durante la programación, en el centro de la pantalla o escritorio, o la posición durante el desarrollo? Hasta que se encuentre con su programa en la práctica, ¡ni siquiera pensará en decirle que el programa debe recordar su configuración!

En el caso más simple, solo es necesario guardar 5 parámetros: el estado de la ventana (minimizado, maximizado), su posición desde los bordes izquierdo y superior del escritorio, su ancho y alto. ¿Y si crea un programa más complejo, con un panel de configuración, donde hay un montón de casillas de verificación y botones de opción? Allí, el usuario puede cambiar su configuración "predeterminada" y establecer la suya propia. ¡Imagínese si un usuario pasara media hora configurando su programa "por sí mismo" y, cuando lo reiniciara, descubriera que no se guardaron todas sus configuraciones!

Hay dos formas de guardar la configuración del usuario: archivos ini y el registro del sistema de Windows. Cada uno de estos métodos tiene sus pros y sus contras.

Si guarda la configuración en el registro de Windows, se ocultan para el usuario, por lo tanto, no podrá estropear nada en ellos. Por otro lado, si varios usuarios están registrados en la computadora, todos podrán cambiar la configuración del programa "por sí mismos". La desventaja es que si se reinstala Windows, también habrá que reinstalar el programa, ya que no estará en el registro.

Si guarda la configuración en un archivo ini, el programa guardará la configuración incluso cuando reinstale el sistema operativo. Además, guardar la configuración en un archivo ini es más fácil de implementar. En esta lección, aprenderemos a trabajar solo con archivos ini.

Los archivos INI tienen muchas ventajas. Es fácil y conveniente trabajar con ellos, admiten tres tipos de datos: cadena, entero y booleano. Además, si tuviéramos que guardar la configuración en un archivo de texto simple, cambiar una de las configuraciones requeriría sobrescribir todo el archivo, y el archivo ini solo permite sobrescribir esta configuración.

Por supuesto, hay algunas reglas para usar dichos archivos.

En primer lugar, si va a trabajar con archivos ini, en la sección de usos, inmediatamente debajo de la palabra interfaz, debe agregar el módulo inifiles, describe todos los datos para trabajar con archivos ini. Agregar un módulo es simple: hay un punto y coma después del último módulo en la lista. Reemplácelo con una coma, agregue la palabra inifiles y luego agregue un punto y coma.

Más lejos. De forma predeterminada, los archivos ini se crean en el directorio donde está instalado Windows. Aparece un archivo con extensión *.ini y su configuración. Esto no siempre es conveniente, especialmente si asume que Windows se puede reinstalar. Es mucho mejor crear el archivo en el directorio donde está instalado su programa. ¿Cómo puedo encontrar este directorio?

ExtractFilePath(Aplicación.ExeName)

Aprendamos cómo crear un archivo ini en la práctica. Crear una nueva aplicación. Agregue el módulo inifiles a la sección de usos.

En primer lugar, anotaremos el guardado de parámetros cuando se cierra el programa. Para ello, cree un controlador de eventos OnDestroy para el formulario. Tal evento ocurre cuando se destruye el objeto de formulario, es decir, cuando finaliza el programa. Cree una sección var y escriba una variable de tipo de archivo ini allí:

Tenga en cuenta que estamos creando el archivo en el mismo directorio desde donde se inicia el programa. Si simplemente indicamos

ini:= TInifile.Create("mi.ini");

¡entonces el archivo se crearía en el directorio de Windows! A continuación, guarde la posición de la ventana, es decir, las propiedades Left y Top del formulario:

//guardar la posición de la ventana:

ini.WriteInteger("Posición", "L", Forma1.Izquierda);

ini.WriteInteger("Posición", "T", Form1.Top);

El archivo ini tiene tres procedimientos para escribir diferentes tipos de datos. WriteInteger, WriteString y WriteBool. En consecuencia, estas funciones escriben un número entero, una cadena y un tipo booleano. Estas funciones tienen 3 parámetros. La primera es la sección ini del archivo. En el propio archivo, sale entre corchetes. Puedes nombrar la sección como quieras, no necesariamente Posición. El segundo parámetro es el nombre del parámetro guardado, en el ejemplo especificamos este parámetro en forma de las letras "L" y "T", aunque también se podría escribir "Izquierda", "Arriba" u otra cosa.

El tercer parámetro de una función es su valor. Debido a que las propiedades Left y Top del formulario son valores enteros, usamos la función WriteInteger para escribir números enteros. Como resultado del ejemplo anterior, aparecerá una inscripción similar a esta en el archivo ini:

// guardar el tamaño de la ventana:

ini.WriteInteger("Tamaño", "W", Forma1.Ancho);

ini.WriteInteger("Tamaño", "H", Forma1.Altura);

Después de haber guardado los parámetros en el archivo ini, debe cerrarse:

// cerrar el archivo:

ini.Gratis;

Todo, el archivo se cierra y la configuración se guarda. Guarde el proyecto, compílelo y vea cómo funciona. Abra el archivo ini creado, este es un archivo de texto simple que puede leer e incluso editar.

Sin embargo, solo hemos hecho la mitad del trabajo. Guardamos la configuración, pero ¿cómo leerla? Todo esto se hace exactamente de la misma manera, solo que al revés. En lugar de la propiedad de destrucción de formulario, usamos la propiedad de creación de formulario (onCreate), en lugar de escribir, usamos lectura, y en lugar de escribir los valores de las propiedades del formulario en un archivo, los leeremos del archivo y asignaremos estos valores a las propiedades de los formularios. En consecuencia, tenemos tres procedimientos para leer parámetros de un archivo ini: ReadInteger, ReadString y ReadBool.

Entonces, creamos un controlador de eventos para el formulario onCreate:

(al crear el formulario)

procedimiento TForm1.FormCreate(Remitente: TObject);

ini: TIniFile; //declarando una variable de tipo inifile

//ahora créalo:

ini:= TInifile.Create(ExtractFilePath(Application.ExeName)+"my.ini");

//aplicar la posición de la ventana:

Form1.Left:= ini.ReadInteger("Posición", "L", 329);

Form1.Top:= ini.ReadInteger("Posición", "T", 261);

//leer las dimensiones de la ventana:

Form1.Width:= ini.ReadInteger("Tamaño", "W", 384);

Form1.Height:= ini.ReadInteger("Tamaño", "H", 312);

// cerrar el archivo:

ini.Gratis;

El tercer parámetro en las funciones de escritura es interesante aquí. Parecería que no necesitamos los valores, los tomamos de las secciones indicadas. Pero se requiere el tercer parámetro, especifica el valor "predeterminado".

Al crear el formulario, cámbielo de tamaño y colóquelo de forma adecuada y observe los valores de las propiedades Left, Top, Width y Height. Escribirás estos valores como los predeterminados. Si el archivo aún no existía, o se produjo algún error al leer este parámetro, por ejemplo, no se encontró la cadena requerida, se utilizará el valor predeterminado. Si se lee la línea deseada, se aplicará el valor especificado en ella.

Guarde el proyecto, compílelo y vea cómo funciona el programa. El archivo ini resultante contendrá el siguiente texto:

Intente cambiar algún parámetro antes de iniciar el programa, por ejemplo, especifique

Luego ejecute el programa y observe cómo cambia la posición de la ventana. Por cierto, esta es una buena manera de ocultar el programa. Si especifica un número mayor para la propiedad Left que la propiedad Width (ancho de la ventana) y al mismo tiempo hace que el número sea negativo, la ventana del programa, por así decirlo, se moverá hacia la izquierda de la pantalla. El programa se está ejecutando, se puede ver en la línea del sistema, ¡pero no hay ventana!

Deslice la ventana del programa de trabajo y salga. Vuelva a ejecutar: ¡se guarda la posición de la última ventana!

Continuemos el programa y creemos un parámetro de cadena. Instale el componente Etiqueta en el formulario, en la propiedad Título del cual escriba: "Ingrese un nuevo título de ventana". Instale el componente Editar a continuación, el usuario ingresará texto en él. Debajo hay un botón con la etiqueta "Aplicar".

Elimine el texto del componente Editar, escriba lo siguiente en el controlador del botón:

Formulario1.Título:= Editar1.Texto;

Esto supone que no ha cambiado los nombres del formulario o Editar. Si cambió el nombre del formulario, por ejemplo, a fMain, escriba

//guardar el encabezado del formulario:

ini.WriteString("Param", "C", Form1.Caption);

Y en el procedimiento onCreate, nuevamente, antes de cerrar el archivo ini, agregue:

//leer el encabezado del formulario:

Form1.Caption:= ini.ReadString("Parámetro", "C", "Programa");

Como puede ver, trabajar con cadenas no es muy diferente de trabajar con números. Guarde el proyecto, compile y vea cómo funciona. Ingrese un nuevo nombre para la ventana, haga clic en el botón "Aplicar", salga del programa y ábralo nuevamente. El texto en la línea del sistema del programa debe conservarse.

Ahora trabajemos con el parámetro booleano. Instale un CheckBox en el formulario. En su propiedad Título, escriba "Parámetro". De hecho, no nos importa qué parámetro se puede guardar, por ejemplo, si permitir hacer clic en un botón, si permitir la visualización del formulario "Acerca de", si algún componente será visible o invisible... Los parámetros que quizás desee guardar pueden ser muchos. Ahora, una cosa es importante para nosotros: la propiedad Checked del componente CheckBox puede ser True (el parámetro está habilitado) o False (el parámetro está deshabilitado). Esto es lo que necesitamos guardar en el archivo ini y luego leerlo.

Antes de cerrar el archivo ini en el procedimiento de evento onDestroy, recuerde el estado de la bandera:

//recordar la bandera:

ini.WriteBool("Param", "CB1", CheckBox1.Checked);

Si la casilla de verificación está deshabilitada, en lugar de Falso, se escribirá 0 en el parámetro del archivo ini. Si está habilitada, se escribirá 1.

Ahora, antes de cerrar el archivo ini, en el procedimiento de evento onCreate, agregue líneas para leer datos del archivo ini:

//leer el estado de la casilla de verificación:

CheckBox1.Checked:= ini.ReadBool("Param", "CB1", True);

De manera predeterminada, la casilla de verificación estará habilitada. Los comentarios, creo, son superfluos. Intente incluir el guardado de parámetros en cada uno de sus programas.

No hay una especificación de formato oficial detallada. Desde Windows 95, los archivos INI se consideran obsoletos y Microsoft sugiere usar el registro del sistema () como reemplazo. Sin embargo, los archivos INI continúan siendo utilizados tanto por aplicaciones de otros fabricantes como por componentes del sistema operativo de Microsoft. Por ejemplo, el archivo boot.ini se usa en Windows NT4/2000/XP cuando se inicia para seleccionar entre múltiples sistemas operativos.

Aunque los archivos INI han ganado popularidad en Windows, se pueden usar en cualquier sistema operativo. La estructura simple de este formato facilita su procesamiento programático y tiene una forma lo suficientemente clara para la lectura y edición humana. Hay editores de texto (como SciTE o Notepad++) que utilizan resaltado y plegado de sintaxis para este formato, lo que facilita la edición manual de archivos INI.

El uso de secciones para separar parámetros ayuda a organizar los datos, pero para almacenar configuraciones grandes con una estructura jerárquica más compleja, el formato XML es más adecuado.

Formato de archivo

Los archivos ini son archivos de texto sin formato que se pueden editar y ver con cualquier editor de texto. Los archivos ini tienen el siguiente formato:

; algún comentario # comentario estilo Unix; comentario sobre la sección var1=value_1 ; a veces se permite un comentario a un solo parámetro var2=value_2 var1=value_1 var2=value_2 ; a veces se permite listar varios valores separados por comas var1=valor_1_1, valor_1_2, valor_1_3 var2=valor_2; en Zend Framework, una matriz se define de la siguiente manera var1=value_1_1 var1=value_1_2 var1=value_1_3 var2=value_2 ; A veces faltan valores Mode= Vid= FolderType=Generic

El archivo INI puede contener:

  • líneas vacías ;
  • comentarios - del símbolo " ; » (punto y coma) hasta el final de la línea;
  • Encabezados de sección - cadenas que consisten en el título de la sección entre corchetes " »;
  • valores paramétricos - líneas como " clave=valor ».

Acuerdos

No existe un estándar generalmente aceptado para el formato de archivo INI. Aunque la estructura general de dichos archivos generalmente se conserva, muchos productos de software introducen funciones adicionales o, por el contrario, restricciones.

  • Comentarios . Algunas aplicaciones (como Samba) tratan tanto ";" como "#" como el comienzo de un comentario.
  • barra invertida . A veces se permite usar una barra invertida "\" para declarar la siguiente línea como continuación de esta. En este caso, se procesarán como una línea completa. A veces también es posible utilizar "\" para introducir caracteres especiales, como "\n" para indicar un salto de línea.
  • Mismos parámetros . En la mayoría de los casos, está prohibida la presencia de dos claves idénticas en la misma sección (solo se procesa la última clave).
  • Nombres de secciones duplicados . Normalmente, si hay varias secciones con el mismo nombre en el archivo, solo se procesa la última. Algunas aplicaciones combinan el contenido de todas esas secciones en una sola.

Ejemplo de implementación

Considere el código que procesa el archivo ini correcto dado y lo genera en una forma especial:

int main() ( freopen("entrada.txt", "r", entrada estándar); freopen("salida.txt", "w", salida estándar); int n; cin >> n; cin.get(); mapa > pf; cadena desde = ""; para (int i = 0; i< n; i++) { string s; getline(cin, s); for (size_t j = 0; j < s.size();) { if (s[j] == " ") s.erase(j, 1); else j++; } if (s.size() == 0 || s == ";") { continue; } if (s == "[") { s.erase(0, 1); s.erase(s.size() - 1, 1); from = s; mp; } else { mp = s.substr(s.find("=") + 1, s.size() - s.find("=")); } } for (map < string, map > :: iterador it = mp.begin(); es != mp.end(); it++) ( if (it -> first != "") ( cout<< "[" << it ->primero<<"]" << endl; } for (map < string, string >::iterador itt = mp.begin(); itt != mp.end(); itt++) ( cout<< itt ->primero<< "=" << itt ->segundo<< endl; } } return 0; }

ver también

Escriba una reseña sobre el artículo ".ini"

Enlaces

Un extracto que caracteriza a .ini

“Lo siento, Madona. Sólo dijo que estabas muy equivocado, y que el amor nunca ha traído bien a nadie. Si eso te dice algo, Isidora.
Solo asentí, tratando de ordenar mis pensamientos de pánico. Y tratando de no mostrarle a Morone lo sorprendido que estaba por la noticia que dijo, dijo con la mayor calma posible:
"¿Puedo invitarlo, monseñor?" Me parece que nuevamente no interferirás con mi ayuda de "bruja". Y gracias por las noticias... Incluso las malas noticias. Siempre es mejor conocer de antemano los planes del enemigo, incluso los peores, ¿no?...
Morone me miró a los ojos con cuidado, tratando dolorosamente de encontrar en ellos la respuesta a alguna pregunta importante para él. Pero mi alma se cerró al mundo para no enfermar... para resistir la prueba que se avecinaba... Y el cardenal se encontró ahora sólo con una memorizada mirada “laica”, que no permitía penetrar en mi alma helada de horror...
“¿Tienes miedo, madonna?” Morone preguntó en voz baja. ¡Eres mil veces más fuerte que él! ¡¿Por qué le tienes miedo?!..
- Tiene algo con lo que aún no soy capaz de luchar... Y sin embargo, no soy capaz de matarlo. ¡Oh, créame, Su Eminencia, si pudiera encontrar la llave de esta víbora venenosa!...- y, recobrando el sentido, inmediatamente sugirió de nuevo: - ¿Deja que te siga cuidando? aliviaré tu dolor.
Pero el cardenal, con una sonrisa, se negó.
“Mañana estaré en un lugar diferente, más tranquilo. Y espero que Caraffa se olvide de mí por un tiempo. Bueno, ¿y tú, Madonna? ¿Qué será de ti? No puedo ayudarte a salir de la cárcel, pero mis amigos son lo suficientemente poderosos. ¿Puedo ser de utilidad para usted?
“Gracias, monseñor, por su preocupación. Pero no tengo esperanzas vanas, esperando salir de aquí... Él nunca me dejará ir... No mi pobre hija. Vivo para destruirlo. No debería tener un lugar entre la gente.
– Lástima que no te reconocí antes, Isidora. Tal vez podríamos llegar a ser buenos amigos. Ahora adios. No puedes quedarte aquí. Papá definitivamente vendrá a desearme "buena suerte". No es necesario que te encuentres con él aquí. Salva a tu hija, Madonna... Y no te rindas ante Caraffe. ¡Dios sea contigo!
“¿De qué Dios está hablando, monseñor?” pregunté con tristeza.
- Seguramente, no sobre aquel a quien Caraffa reza!.. - Morone sonrió al despedirse.
Me quedé quieto por un momento, tratando de recordar en mi alma la imagen de esta persona maravillosa, y saludando con la mano, salí al corredor.
¡El cielo se abrió con una ráfaga de ansiedad, pánico y miedo!... ¿Dónde estaba ahora mi valiente y solitaria niña? ¿Qué la impulsó a irse de Meteora?.. Por alguna razón, Anna no respondió a mis insistentes llamadas, aunque yo sabía que podía oírme. Esto me infundió una ansiedad aún mayor, y solo luché con mis últimas fuerzas para no sucumbir al pánico que quemaba mi alma, porque sabía que Caraffa seguramente se aprovecharía de cualquiera de mis debilidades. Y luego tendré que perder antes incluso de empezar a resistir...
Habiéndome retirado a "mis" habitaciones, "lamí" viejas heridas, sin siquiera esperar que alguna vez sanaran, sino simplemente tratando de ser lo más fuerte y tranquilo posible en caso de cualquier oportunidad de comenzar una guerra con Caraffa ... Es No tiene sentido esperar que fuera un milagro, porque sabía perfectamente que en nuestro caso no se preveían milagros... Todo lo que suceda, lo tendré que hacer solo yo.
La inacción mató, haciéndome sentir olvidado, indefenso e innecesario por todos... Y aunque sabía perfectamente que estaba equivocado, el gusano de la "duda negra" carcomió con éxito el cerebro inflamado, dejando allí un rastro brillante de incertidumbre y arrepentimiento. ...
No me arrepiento de haber estado en Karaffa yo mismo ... Pero tenía mucho miedo por Anna. Y además, todavía no podía perdonarme por la muerte de mi padre y de Girolamo, mi amado y las mejores personas del mundo para mí... ¿Seré capaz de vengarlos alguna vez?... ¿No tienen razón todos cuando decir que Caraffa no puede ser derrotado? ¿Que no lo destruiré, sino que moriré estúpidamente yo mismo?... ¿Realmente el Norte tenía razón al invitarme a ir a Meteora? ¡¿Y la esperanza de destruir al Papa todo este tiempo vivió solo en mí?! ..
Y una cosa más... Sentí que estaba muy cansada... Inhumanamente, terriblemente cansada... A veces incluso parecía - ¿no sería realmente mejor ir a Meteora?... Después de todo, ¿alguien fue allí? .. Y por qué No les importaba que la gente estuviera muriendo a su alrededor. Para ellos era importante APRENDER, recibir el CONOCIMIENTO secreto, ya que se consideraban excepcionalmente dotados... Pero, por otro lado, si realmente eran tan “excepcionales”, entonces cómo podían olvidar lo más simple, pero en mi opinión, nuestro mandamiento es muy importante: no vayas a descansar mientras otros necesitan tu ayuda... ¿Cómo pudieron cerrarse tan fácilmente sin siquiera mirar a su alrededor, sin tratar de ayudar a los demás?... ¿Cómo calmaron sus almas?...

La causa más común de los problemas de expansión de archivos INI es simplemente la falta de aplicaciones adecuadas instaladas en su computadora. En este caso, es suficiente encontrar, descargar e instalar una aplicación que admita archivos INI; dichos programas están disponibles a continuación.

Sistema de búsqueda

Ingrese la extensión del archivo

Ayuda

Clave

Tenga en cuenta que algunos datos codificados de archivos que nuestra computadora no lee a veces se pueden ver en el Bloc de notas. De esta forma leeremos fragmentos de texto o números - Merece la pena comprobar si este método también funciona en el caso de archivos INI.

¿Qué hacer si la aplicación de la lista ya está instalada?

A menudo, una aplicación instalada debería vincularse automáticamente a un archivo INI. Si no sucedió, entonces el archivo INI se puede vincular manualmente con la aplicación recién instalada. Simplemente haga clic derecho en el archivo INI y luego, de la lista disponible, seleccione la opción "Elegir programa predeterminado". Luego debe seleccionar la opción "Examinar" y encontrar su aplicación favorita. Los cambios realizados deben ser aprobados con la opción "OK".

Programas que abren el archivo INI

ventanas
Mac OS
linux

¿Por qué no puedo abrir el archivo INI?

Los problemas con los archivos INI también pueden tener otros motivos. A veces, ni siquiera la instalación de software que admita archivos INI en su computadora resolverá el problema. El motivo de la imposibilidad de abrir, además de trabajar con el archivo INI, también puede ser:

Enlaces de archivos INI inconsistentes en entradas de registro
- corrupción del archivo INI que abrimos
- Infección de archivos INI (virus)
- recurso informático demasiado pequeño
- controladores obsoletos
- eliminación de la extensión INI del registro del sistema Windows
- instalación incompleta de un programa que admita la extensión INI

La solución de estos problemas debería conducir a una apertura y trabajo gratuitos con archivos INI. En caso de que la computadora aún tenga problemas con los archivos, debe buscar la ayuda de un experto que determinará la causa exacta.

Mi computadora no muestra las extensiones de los archivos, ¿qué debo hacer?

En las instalaciones estándar del sistema Windows, el usuario de la computadora no ve la extensión del archivo INI. Esto se puede cambiar con éxito en la configuración. Simplemente vaya al "Panel de control" y seleccione "Ver y personalización". Luego debe ingresar a las "Opciones de carpeta" y abrir la "Ver". En la pestaña "Ver" hay una opción "Ocultar extensiones de tipos de archivos conocidos": debe seleccionar esta opción y confirmar la operación presionando el botón "Aceptar". En este punto, todas las extensiones de archivo, incluido INI, deberían aparecer ordenadas por nombre de archivo.

iní El archivo de inicialización es un archivo de configuración que contiene datos de configuración para Microsoft Windows, Windows NT y algunas aplicaciones.

Apareció desde las primeras versiones de Windows. En Windows versión 1.01, esto era solo el archivo WIN.INI. Windows 3.0 agregó el archivo SYSTEM.INI. Y luego su número comenzó a crecer rápida e incontrolablemente.

No hay una especificación de formato oficial detallada. A partir de Windows 95, los archivos INI se consideran obsoletos y Microsoft sugiere usar el Registro como reemplazo. Sin embargo, los archivos INI continúan siendo utilizados tanto por aplicaciones de otros fabricantes como por componentes del sistema operativo de Microsoft. Por ejemplo, el archivo boot.ini se usa en Windows NT4/2000/XP cuando se inicia para seleccionar entre múltiples sistemas operativos.

Aunque los archivos INI han ganado popularidad en Windows, se pueden usar en cualquier sistema operativo. La estructura simple de este formato facilita su procesamiento programático y tiene una forma lo suficientemente clara para la lectura y edición humana. Hay editores de texto (como SciTE o Notepad++) que utilizan resaltado y plegado de sintaxis para este formato, lo que facilita la edición manual de archivos INI.

El uso de secciones para separar parámetros ayuda a organizar los datos; sin embargo, para almacenar configuraciones grandes con una estructura jerárquica más compleja, el formato XML o JSON es más adecuado.

Formato de archivo

Los archivos ini son archivos de texto sin formato que se pueden editar y ver con cualquier editor de texto. Los archivos ini tienen el siguiente formato:

; algún comentario # comentario estilo Unix ; comentario de sección var1 = valor_1 ; a veces se permite un comentario sobre un solo parámetro var2 = valor_2 var1 = valor_1 var2 = valor_2 ; a veces se permite enumerar varios valores separados por comas var1 = valor_1_1, valor_1_2, valor_1_3 var2 = valor_2 ; en Zend Framework, una matriz se define de la siguiente manera var1 = valor_1_1 var1 = valor_1_2 var1 = valor_1_3 var2 = valor_2 ; A veces no hay valores Modo=Vid=TipoCarpeta=Genérico

El archivo INI puede contener:

  • líneas vacías ;