Fórum Arquivo Ini - Delphi #607859
02/02/2020
0
Bom dia Galera, tudo bom ?
Estou com uma dúvida onde já consegui gravar o arquivo Ini e ler ele, porém preciso inserir outros registros com sequencial e exibir na listBox, exemplo:
Gravei no arquivo
[Confuguaraçao1]
Teste - teste1
Agora preciso que se exista a configuração 1 ele adicione a 2 e consecutivamente.
Alguém pode me tirar essa dúvida?
Estou com uma dúvida onde já consegui gravar o arquivo Ini e ler ele, porém preciso inserir outros registros com sequencial e exibir na listBox, exemplo:
Gravei no arquivo
[Confuguaraçao1]
Teste - teste1
Agora preciso que se exista a configuração 1 ele adicione a 2 e consecutivamente.
Alguém pode me tirar essa dúvida?
Yuri
Curtir tópico
+ 0
Responder
Post mais votado
06/02/2020
é só fazer a mesma coisa que fez
Exemplo
//funçaõ para criar o Config.ini
function SaveConfig: string;
var
sDir: String;
begin
sDir:= EXEDIR;
if not FileExists(sDir+'\\Config.ini') then // verifica se não existe
begin
INI := TIniFile.Create(sDir+'\\Config.ini');//cria e seta o path com Config.DAT
INI.WriteString('Configuração1', 'Teste1', Form1.sEdit1.Text);
INI.WriteBool ('Configuração1', 'Teste2', Form1.sCheckBox1.Checked);
INI.WriteString('Configuração1', 'Teste3', Form1.sSkinManager1.Skinname);
INI.WriteString('Configuração2', 'Teste1', Form1.sEdit1.Text);
INI.WriteBool ('Configuração2', 'Teste2', Form1.sCheckBox1.Checked);
INI.WriteString('Configuração2', 'Teste3', Form1.sSkinManager1.Skinname);
INI.WriteString('Configuração3', 'Teste1', Form1.sEdit1.Text);
INI.WriteBool ('Configuração3', 'Teste2', Form1.sCheckBox1.Checked);
INI.WriteString('Configuração3', 'Teste3', Form1.sSkinManager1.Skinname);
FreeAndNil(INI);// libera
end;
end;
// função para carregar o Config.ini
function LoadConfig: string;
var
sDir: String;
begin
sDir:=EXEDIR;
if FileExists(sDir+'\\Config.ini') then
begin
INI := TIniFile.Create(sDir+'\\Config.ini');
Form1.sEdit1.Text:= INI.ReadString('Configuração1', 'Teste1', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool ('Configuração1', 'Teste2', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração1', 'Teste3', Form1.sSkinManager1.Skinname));
Form1.sEdit1.Text:= INI.ReadString('Configuração2', 'Teste1', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool ('Configuração2', 'Teste2', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração2', 'Teste3', Form1.sSkinManager1.Skinname));
Form1.sEdit1.Text:= INI.ReadString('Configuração3', 'Teste1', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool ('Configuração3', 'Teste2', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração3', 'Teste3', Form1.sSkinManager1.Skinname));
FreeAndNil(INI);
end;
end;
Exemplo
//funçaõ para criar o Config.ini
function SaveConfig: string;
var
sDir: String;
begin
sDir:= EXEDIR;
if not FileExists(sDir+'\\Config.ini') then // verifica se não existe
begin
INI := TIniFile.Create(sDir+'\\Config.ini');//cria e seta o path com Config.DAT
INI.WriteString('Configuração1', 'Teste1', Form1.sEdit1.Text);
INI.WriteBool ('Configuração1', 'Teste2', Form1.sCheckBox1.Checked);
INI.WriteString('Configuração1', 'Teste3', Form1.sSkinManager1.Skinname);
INI.WriteString('Configuração2', 'Teste1', Form1.sEdit1.Text);
INI.WriteBool ('Configuração2', 'Teste2', Form1.sCheckBox1.Checked);
INI.WriteString('Configuração2', 'Teste3', Form1.sSkinManager1.Skinname);
INI.WriteString('Configuração3', 'Teste1', Form1.sEdit1.Text);
INI.WriteBool ('Configuração3', 'Teste2', Form1.sCheckBox1.Checked);
INI.WriteString('Configuração3', 'Teste3', Form1.sSkinManager1.Skinname);
FreeAndNil(INI);// libera
end;
end;
// função para carregar o Config.ini
function LoadConfig: string;
var
sDir: String;
begin
sDir:=EXEDIR;
if FileExists(sDir+'\\Config.ini') then
begin
INI := TIniFile.Create(sDir+'\\Config.ini');
Form1.sEdit1.Text:= INI.ReadString('Configuração1', 'Teste1', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool ('Configuração1', 'Teste2', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração1', 'Teste3', Form1.sSkinManager1.Skinname));
Form1.sEdit1.Text:= INI.ReadString('Configuração2', 'Teste1', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool ('Configuração2', 'Teste2', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração2', 'Teste3', Form1.sSkinManager1.Skinname));
Form1.sEdit1.Text:= INI.ReadString('Configuração3', 'Teste1', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool ('Configuração3', 'Teste2', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração3', 'Teste3', Form1.sSkinManager1.Skinname));
FreeAndNil(INI);
end;
end;
Exemplo de como vai fica no Config.ini
finge que os componentes tão com valor assim igual a baixo
//Form1.sEdit1.Text = CFG
//Form1.sCheckBox1.Checked = True // True = 1 False = 0
//Form1.sSkinManager1.Skinname = MinhaSkin
finge que os componentes tão com valor assim igual a baixo
//Form1.sEdit1.Text = CFG
//Form1.sCheckBox1.Checked = True // True = 1 False = 0
//Form1.sSkinManager1.Skinname = MinhaSkin
[Configuração1]
Teste1=CFG
Teste2=1
Teste3=MinhaSkin
[Configuração2]
Teste1=CFG
Teste2=1
Teste3=MinhaSkin
[Configuração3]
Teste1=CFG
Teste2=1
Teste3=MinhaSkin
Core2
Responder
Gostei + 1
Mais Posts
06/02/2020
Core2
se quiser verifica se já existe o config1 dentro do ini faça assim
function SaveConfig: string;
var
sDir: String;
Lista : TStringList;
i: Integer;
begin
sDir:= EXEDIR;
if not FileExists(sDir+''\\\\\\\\Config.ini'') then // verifica se não existe
begin
INI := TIniFile.Create(sDir+''\\\\\\\\Config.ini'');//cria e seta o path com Config.DAT
INI.WriteString(''Configuração1'', ''Teste1'', Form1.sEdit1.Text);
INI.WriteBool (''Configuração1'', ''Teste2'', Form1.sCheckBox1.Checked);
INI.WriteString(''Configuração1'', ''Teste3'', Form1.sSkinManager1.Skinname);
FreeAndNil(INI);// libera
Lista:= TStringList.Create;
Lista.LoadFromFile(sDir+''\\\\\\\\Config.ini'');
for i := 1 to 10 do
begin
if not AnsiContainsText(Lista.Text, ''Configuração'' + IntToStr(i)) then
begin
INI := TIniFile.Create(sDir+''\\\\\\\\Config.ini'');//cria e seta o path com Config.DAT
INI.WriteString(''Configuração'' + IntToStr(i), ''Teste1)'', Form1.sEdit1.Text);
INI.WriteBool (''Configuração'' + IntToStr(i), ''Teste2'', Form1.sCheckBox1.Checked);
INI.WriteString(''Configuração'' + IntToStr(i), ''Teste3'', Form1.sSkinManager1.Skinname);
FreeAndNil(INI);// libera
end;
end;
end;
function LoadConfig: string;
var
sDir: String;
Lista : TStringList;
i: Integer;
begin
sDir:=EXEDIR;
if FileExists(sDir+''\\\\\\\\Config.ini'') then
begin
Lista:= TStringList.Create;
Lista.LoadFromFile(sDir+''\\\\\\\\Config.ini'');
for i := 1 to 10 do
begin
if AnsiContainsText(Lista.Text, 'Configuração' + IntToStr(i)) then
begin
INI := TIniFile.Create(sDir+''\\\\\\\\Config.ini'');
Form1.sEdit1.Text:= INI.ReadString(''Configuração'' + IntToStr(i), ''Teste1'', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool (''Configuração'' + IntToStr(i), ''Teste2'', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração' + IntToStr(i), ''Teste3'', Form1.sSkinManager1.Skinname));
FreeAndNil(INI);// libera
end;
end;
end;
end;
function SaveConfig: string;
var
sDir: String;
Lista : TStringList;
i: Integer;
begin
sDir:= EXEDIR;
if not FileExists(sDir+''\\\\\\\\Config.ini'') then // verifica se não existe
begin
INI := TIniFile.Create(sDir+''\\\\\\\\Config.ini'');//cria e seta o path com Config.DAT
INI.WriteString(''Configuração1'', ''Teste1'', Form1.sEdit1.Text);
INI.WriteBool (''Configuração1'', ''Teste2'', Form1.sCheckBox1.Checked);
INI.WriteString(''Configuração1'', ''Teste3'', Form1.sSkinManager1.Skinname);
FreeAndNil(INI);// libera
Lista:= TStringList.Create;
Lista.LoadFromFile(sDir+''\\\\\\\\Config.ini'');
for i := 1 to 10 do
begin
if not AnsiContainsText(Lista.Text, ''Configuração'' + IntToStr(i)) then
begin
INI := TIniFile.Create(sDir+''\\\\\\\\Config.ini'');//cria e seta o path com Config.DAT
INI.WriteString(''Configuração'' + IntToStr(i), ''Teste1)'', Form1.sEdit1.Text);
INI.WriteBool (''Configuração'' + IntToStr(i), ''Teste2'', Form1.sCheckBox1.Checked);
INI.WriteString(''Configuração'' + IntToStr(i), ''Teste3'', Form1.sSkinManager1.Skinname);
FreeAndNil(INI);// libera
end;
end;
end;
function LoadConfig: string;
var
sDir: String;
Lista : TStringList;
i: Integer;
begin
sDir:=EXEDIR;
if FileExists(sDir+''\\\\\\\\Config.ini'') then
begin
Lista:= TStringList.Create;
Lista.LoadFromFile(sDir+''\\\\\\\\Config.ini'');
for i := 1 to 10 do
begin
if AnsiContainsText(Lista.Text, 'Configuração' + IntToStr(i)) then
begin
INI := TIniFile.Create(sDir+''\\\\\\\\Config.ini'');
Form1.sEdit1.Text:= INI.ReadString(''Configuração'' + IntToStr(i), ''Teste1'', Form1.sEdit1.Text);
Form1.sCheckBox1.Checked := INI.ReadBool (''Configuração'' + IntToStr(i), ''Teste2'', Form1.sCheckBox1.Checked);
Form1.sSkinManager1.Skinname:= (INI.ReadString('Configuração' + IntToStr(i), ''Teste3'', Form1.sSkinManager1.Skinname));
FreeAndNil(INI);// libera
end;
end;
end;
end;
Responder
Gostei + 1
Clique aqui para fazer login e interagir na Comunidade :)