En gambas, trabajar con ellos es muy fácil. Solo hay que agregar el componente gb.settings y a partir de ahí se manejan estos archivos con mucha facilidad porque disponemos del objeto settings.
Propiedades
Settings.path
identifica la ubicación del archivo (y el nombre). A menos que se especifique se utilizará una ubicación por defecto que es Directorio de usuario/.config/gambas
El nombre del archivo por defecto será
nombre_aplicacion.conf
Así que si no se especifica , el archivo de configuración estará en ~/.config/gambas/aplicacion.conf
Métodos
Save
Si cambia el valor por defecto habrá que especificar settings.path y grabar.
Si se cambia el valor de alguna variable de entorno de la aplicación bastará con grabar.
método sa ve
'Creación de usua rio y cla ve por defecto
Settings["Usuario/ user"] = "Usuario" --> crea la sección usuario y una variable user con el valor indicado
Settings["Usuario/UserClave"] = " clave" ---> en la sección usuario crea una variable clave con el valor indicado
' Acceso a base de datos
Settings["base/BdUser"] = "Datos" ----> en la seccion base crea una variable bduser con el valor indicado
Settings("base/Tipo" ]="mysql" ---> en la sección base crea una variable Tipo con el valor indicado
Settings["base/BdUserClave"] = "1234" ----> en la sección base crea una variable bduserclave con el valor indicado
Settings["Base/Host" ] = "localhost " ----> en la sección base crea una variable host con el valor indicado
Settings["Base/Puerto"] = "3306" ----> en la sección base crea una variable puerto con el valor indicado
Settings.save ----> graba un archivo de configuración con esas variables
Una vez creado veremos en ~/.config/gambas un archivo con el nombre del proyecto y .conf que tiene el siguiente contenido
[Usuario]
user= "Usuario"
UserClave="clave"
[base]
BdUse r="Datos"
BdU se rClave="1234"
BdTipo="mysql"
Host= "localhost"
Puerto="3306"
Si antes de grabar se especificó settings.path entonces la ubicación y el archivo serán el especificado.
Settings
Es tan fácil como llamar al objeto Settings con la clave y subclave que quiero leer.
Dim Base as string ,T ipo as string, Usuario as string , Clave as string , Puerto as string
Dim Cn as new connecti on
Cn.type=settings["Base/Tipo","mysql "]
Cn.Host=settings["Base /Host","localhost "]
Cn.Port=settings["Base/Puerto","3306" ]
Cn. name="nombre_base_de_datos"
Cn. login=settings[ Usuario/user,"usuario "]
Cn. password=settings [Usuario/UserClave" ,"1234"]
Cn. open
Dim Cn as new connecti on
Cn.type=settings["Base/Tipo","mysql "]
Cn.Host=settings["Base /Host","localhost "]
Cn.Port=settings["Base/Puerto","3306" ]
Cn. name="nombre_base_de_datos"
Cn. login=settings[ Usuario/user,"usuario "]
Cn. password=settings [Usuario/UserClave" ,"1234"]
Cn. open
En este caso se obtienen los parámetros para una conexión a base de datos de un archivo .CONF previamente creado.
El método settings tiene dos valores. El primero es el valor que obtendrá si puede leer el archivo CONF. El segundo es el valor que obtendrá si no puede leerlo.
Reload
Settings.reload
Vover a los parámetros especificados en el conf