quinta-feira, 3 de novembro de 2011

Leitura e Gravação de Arquivos INI - Delphi

Bom dia Pessoal,
Posto abaixo 1 rotina  para a leitura de arquivos INI, que são muito úteis para as configurações de um sistema, considerando um form chamado FrmLogin.

{-----------------------------}
{LEITURA DO ARQUIVO }
{-----------------------------}

procedure TFrmLogin.LeArquivoIni();
var sCaminho,sArquivo,sUsuario,sIp:string;
config: TIniFile;
begin
  {Considera que o ini, esta na mesma pasta da aplicação e carrega o seu caminho na variavel abaixo.}
    sCaminho := ExtractFilePath(Application.ExeName);
{Concatena o nome do arquivo com o caminho dele, nome do arquivo  'Config.ini'}
    sArquivo  := sCaminho + '\config.ini';
{Cria o ini em tempo de execucao}
   config    := TIniFile.Create(sArquivo);
{Le do cabecalho default , com a linha de nome usuario e carrega na variavel sUsuario}
   sUsuario  := config.readstring('default', 'usuario', 'teste');
//O 3° parametro acima, é o valor default, caso a linha usuario, esteja vazia ou não exista.
{Le do cabecalho conexao , com a linha de nome ip e carrega na variavel sIp}
  sIp  := config.readstring('conexao', 'ip', '192.168.0.37');
//O 3° parametro acima, é o valor default, caso a linha ip, esteja vazia ou não exista.
{
Poderiamos tambem utilizar
config.ReadInteger();
config.ReadBool();
config.ReadDate();
config.ReadTime();
config.ReadDateTime();
config.ReadFloat();
Todos Esses com o o retorno diferente, conforme o proprio nome da funcao diz.
By
Gustavo Luís H.
}
end;

{-----------------------------}
{GRAVACAO DO ARQUIVO }
{-----------------------------}
procedure TFrmLogin.gravaArquivoIni();
var sArquivo, sCaminho: string;
  config: TIniFile;
begin
  {Considera que o ini, esta na mesma pasta da aplicação e carrega o seu caminho na variavel abaixo.}
  sCaminho := ExtractFilePath(Application.ExeName);
 {Concatena o nome do arquivo com o caminho dele, nome do arquivo  'Config.ini'}
  sArquivo  := sCaminho + '\config.ini';
 {Cria o ini em tempo de execucao}
  config    := TIniFile.Create(sArquivo);
  config.WriteString('configuracoes', 'Usuario', Trim(edUsuario.Text));
//O 3° parametro acima, é o valor a ser gravado no cabecalho configuracoes, tag usuario.
  config.WriteString('configuracoes', 'ip', Trim(edConexao.Text));
//O 3° parametro acima, é o valor a ser gravado no cabecalho configuracoes, tag ip.
 
{
Poderiamos tambem utilizar
config.WriteInteger();
config.WriteBool();
config.WriteDate();
config.WriteTime();
config.WriteDateTime();
config.WriteFloat();
Todos Esses com o o retorno diferente, conforme o proprio nome da funcao diz.
By
Gustavo Luís H.
}
end;

Nome do arquivo Ini utilizado : config.ini.
Conteudo do arquivo Ini Utilizado :
[conexao]
ip=192.168.0.137
[default]
usuario=1




0 comentários:

Postar um comentário