Eliminar una seccion de un archivo ini
Eliminar una seccion de un archivo ini
De nuevo consultando a los maestros, saludos.
En mi ini tengo esto
[Apli1]
Nombre Archivo=WinRar W7
Ubicacion=\Programas\Install\Winrar 3.7.1 Español\WinRar W7\WinRar W7.exe
Estado=1
Icono=\Programas\Install\Winrar 3.7.1 Español\WinRar W7\WinRar W7.ico
Info=\Programas\Install\Winrar 3.7.1 Español\WinRar W7\WinRar W7.txt
[Prog0] <<========================== Seccion ===================================== Esto es lo que quiero borrar o eliminar
Nombre Archivo=AutoIt V3 <<======================== Clave ========================= Esto si lo puedo borrar con IniDelete
Ubicacion=\Programas\Install\AutoIt v3\AutoIt V3.exe <<============= Clave ============= Esto si lo puedo borrar con IniDelete
Estado=0 <<============================================== Clave ================= Esto si lo puedo borrar con IniDelete
Icono=\Programas\Install\AutoIt v3\AutoIt V3.ico <<============= Clave ================= Esto si lo puedo borrar con IniDelete
Info=\Programas\Install\AutoIt v3\AutoIt V3.txt <<============== Clave ================= Esto si lo puedo borrar con IniDelete
Lo que no he podido eliminar es lo que identifica la seccion, la que esta encerrada entre estos [..].
Ayudenme que no encuentro como hacerlo, no se si hay una funsion para eso.
Porque lo quiero hacer?, porque nesecito borrala para volverla a escribir con nuevos datos con la funsion IniWrite, mi script o programa lee las secciones y me muestra los datos de las secciones, pero nesecito crear un boton borrar para eliminar secciones y asi poder escribir nuevos datos.
De antemano grasias.
En mi ini tengo esto
[Apli1]
Nombre Archivo=WinRar W7
Ubicacion=\Programas\Install\Winrar 3.7.1 Español\WinRar W7\WinRar W7.exe
Estado=1
Icono=\Programas\Install\Winrar 3.7.1 Español\WinRar W7\WinRar W7.ico
Info=\Programas\Install\Winrar 3.7.1 Español\WinRar W7\WinRar W7.txt
[Prog0] <<========================== Seccion ===================================== Esto es lo que quiero borrar o eliminar
Nombre Archivo=AutoIt V3 <<======================== Clave ========================= Esto si lo puedo borrar con IniDelete
Ubicacion=\Programas\Install\AutoIt v3\AutoIt V3.exe <<============= Clave ============= Esto si lo puedo borrar con IniDelete
Estado=0 <<============================================== Clave ================= Esto si lo puedo borrar con IniDelete
Icono=\Programas\Install\AutoIt v3\AutoIt V3.ico <<============= Clave ================= Esto si lo puedo borrar con IniDelete
Info=\Programas\Install\AutoIt v3\AutoIt V3.txt <<============== Clave ================= Esto si lo puedo borrar con IniDelete
Lo que no he podido eliminar es lo que identifica la seccion, la que esta encerrada entre estos [..].
Ayudenme que no encuentro como hacerlo, no se si hay una funsion para eso.
Porque lo quiero hacer?, porque nesecito borrala para volverla a escribir con nuevos datos con la funsion IniWrite, mi script o programa lee las secciones y me muestra los datos de las secciones, pero nesecito crear un boton borrar para eliminar secciones y asi poder escribir nuevos datos.
De antemano grasias.
Re: Eliminar una seccion de un archivo ini
Hola. has usado IniDelete?
Saludos
Saludos
- ............................................
......................................
Re: Eliminar una seccion de un archivo ini
Si lo he usado, solo elimina las claves pero deja la seccion
Re: Eliminar una seccion de un archivo ini
En la ayuda dice The key name in the .ini file to delete. If the key name is not given the entire section is deleted. The Default keyword may also be used which will cause the section to be deleted.
Si no le pasas ninguna llave borra la seccion completa.
Algo así como IniDelete($sFilePath, "[Prog0]")
Saludos
Si no le pasas ninguna llave borra la seccion completa.
Algo así como IniDelete($sFilePath, "[Prog0]")
Saludos
- ............................................
......................................
Re: Eliminar una seccion de un archivo ini
Ya lo prove y solo elimina las claves y deja las secciones, pero ya solucione el problema, aunque exista la seccion, si esta vacia la reescribe agregandole nuevos datos.
Asi que ese problema se resolvio.
Cada que elimino las claves queda asi.
[Conf0]
Pero las aprovecho para usar la seccion de nuevo, agregandole nuevas claves.
Grasias por la ayuda.
Asi que ese problema se resolvio.
Cada que elimino las claves queda asi.
[Conf0]
Pero las aprovecho para usar la seccion de nuevo, agregandole nuevas claves.
Grasias por la ayuda.
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Eliminar una seccion de un archivo ini
Como dice danny con la función inidelete sin indicar nada en el parámetro key te debe borrar la sección entera. La sección si los corchetes:
IniDelete($sFilePath, "Prog0")
Si te da problemas, recuerda que un archivo .ini es simplemente un archivo de texto, y autoit tiene multitud de funciones para trabajar con textos y ficheros de texto . Mira todas las que empiezan por string.... . Y para la apertura, lectura y escritura de ficheros, fileopen, fileread, filewrite, entre otras.
Saludos.
IniDelete($sFilePath, "Prog0")
Si te da problemas, recuerda que un archivo .ini es simplemente un archivo de texto, y autoit tiene multitud de funciones para trabajar con textos y ficheros de texto . Mira todas las que empiezan por string.... . Y para la apertura, lectura y escritura de ficheros, fileopen, fileread, filewrite, entre otras.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Eliminar una seccion de un archivo ini
Grasias por la ayuda, son unos maestros.
Desde que comenze con autoit, con la ayuda de ustedes he aprendido mucho, aprendi a usar los array, for next y mucho mas.
Ahora no tengo que escribir tanto, espero seguir aprendiendo con su valiosa ayuda.
Dios los bendiga y hasta la proxima.
Desde que comenze con autoit, con la ayuda de ustedes he aprendido mucho, aprendi a usar los array, for next y mucho mas.
Ahora no tengo que escribir tanto, espero seguir aprendiendo con su valiosa ayuda.
Dios los bendiga y hasta la proxima.