Чтение/запись файла в Delphi
2941
13
splashman
activist
Есть файл con.fig. следующего формата
name = sysdba
passwd = lol
..............
Как мне считывать и записывать в переменыые делфи эти значения?
name = sysdba
passwd = lol
..............
Как мне считывать и записывать в переменыые делфи эти значения?
Да можно и без Ini-файла обойтись, обыкновеннным StringList, использовать свойство Values
есть проект. как написать чтоб он считал из файла в вышеупомянутом топике параметры в переменные. т.е. запускается проект. ему нуно соедениться с бд и этот проект смотрит в файл и с него читает логин/пароль.
Тебе же уже сказали, Юзай ini - файлы. Если это тебе ни о чем не говорит, поищи здесь . Там была неплохая статейка по теме ![:спок:](https://m.forum.samara24.ru/static/img/graemlins/cool.gif)
![:спок:](https://m.forum.samara24.ru/static/img/graemlins/cool.gif)
проще всего разместить на форме TRichEdit или TMemo дать ему Visible:=false, WordWrap:=false (чтобы от размера поля не переносились части строк)
Далее открывать файл например RichEdit1.LoadFromFile('C:/Temp/myproga.txt'),
(Но перед этим сделать RichEdit1.clear) а потом читать по строкам param:=RichEdit1.Lines.Strings[0]
param2:=RichEdit1.Lines.Strings
Я так делаю всегда, а файл с текстовыми значениями параметров можно хоть *.ini хоть *.txt называть![:улыб:](https://m.forum.samara24.ru/static/img/graemlins/smile.gif)
ЗЫ я мог ошибиться в синтаксисе.
Далее открывать файл например RichEdit1.LoadFromFile('C:/Temp/myproga.txt'),
(Но перед этим сделать RichEdit1.clear) а потом читать по строкам param:=RichEdit1.Lines.Strings[0]
param2:=RichEdit1.Lines.Strings
![:1:](https://m.forum.samara24.ru/static/img/graemlins/1.gif)
Я так делаю всегда, а файл с текстовыми значениями параметров можно хоть *.ini хоть *.txt называть
![:улыб:](https://m.forum.samara24.ru/static/img/graemlins/smile.gif)
ЗЫ я мог ошибиться в синтаксисе.
Сибиряк
old hamster
В это случае необходимо следить за стркутурой файла, либо просто не говорить юзверю о его существовании ![:спок:](https://m.forum.samara24.ru/static/img/graemlins/cool.gif)
![:спок:](https://m.forum.samara24.ru/static/img/graemlins/cool.gif)
Сейчас читают
Продажа/обмен косметики. Правила в 1-ом посте. (часть 5)
311700
1000
Хочу стать программистом!!!
7886
46
Радиотелефон трещит, если отойти от базы
10876
13
Замечательный способ, натюрлих....
Еще можно через OLEAutomation запускать Exel (естественно в скрытом режиме), закачивать туда файл, и из нужных ячеек выдяргивать нужную информацию.
var
a: TStrings;
begin
a := TStringList.Create;
try
a.LoadFromFile('c:\config.txt');
ShowMessage(a.Value['param1']);
ShowMessage(a.Value['param2']);
finally
a.Free();
end;
end;
Еще можно через OLEAutomation запускать Exel (естественно в скрытом режиме), закачивать туда файл, и из нужных ячеек выдяргивать нужную информацию.
var
a: TStrings;
begin
a := TStringList.Create;
try
a.LoadFromFile('c:\config.txt');
ShowMessage(a.Value['param1']);
ShowMessage(a.Value['param2']);
finally
a.Free();
end;
end;
Принцип тот же. Просто у меня уже юзается RichEdit в проге под разные нужды и поэтому пользую его и для этого.
Предыдущий вариант я пользовал на этапе разработки и прогонки проги. Править *.txt проще. Если параметры постоянны можно их запихать в реестр
uses Registry;
......
reg:TRegistry;
......
Reg:=TRegistry.Create;
try
Reg.RootKey:=HKEY_CURRENT_USER;
Reg.OpenKeyReadOnly('\Software\MyProga');
ParamSG:=Reg.ReadString('Type');
flMaster:=ParamSG='master';
if flMaster then begin
sFrom:=Reg.ReadString('From');
sTo := Reg.ReadString('To');
end
else begin sFrom:=''; sTo :='' end;
except begin flMaster:=false; sFrom:=''; sTo:=''; end;
end;
Reg.Free;
где Type, From, To строковый параметр
Предыдущий вариант я пользовал на этапе разработки и прогонки проги. Править *.txt проще. Если параметры постоянны можно их запихать в реестр
uses Registry;
......
reg:TRegistry;
......
Reg:=TRegistry.Create;
try
Reg.RootKey:=HKEY_CURRENT_USER;
Reg.OpenKeyReadOnly('\Software\MyProga');
ParamSG:=Reg.ReadString('Type');
flMaster:=ParamSG='master';
if flMaster then begin
sFrom:=Reg.ReadString('From');
sTo := Reg.ReadString('To');
end
else begin sFrom:=''; sTo :='' end;
except begin flMaster:=false; sFrom:=''; sTo:=''; end;
end;
Reg.Free;
где Type, From, To строковый параметр
Еще можно через OLEAutomation запускать Exel (естественно в скрытом режиме), закачивать туда файл, и из нужных ячеек выдяргивать нужную информацию.
![:улыб:](https://m.forum.samara24.ru/static/img/graemlins/smile.gif)
Есть файл con.fig. следующего форматаМоя плакать...
Есть файл con.fig. следующего формата
name = sysdba
passwd = lol
..............
Как мне считывать и записывать в переменыые делфи эти значения?
Может еще переменные объявлять научить?
Какой умный и гордый. Сам будто никогда не задавал простых вопросов.
Egor_M
experienced
Задавал, чего греха таить.
Но в основном не на форумах, да и давно бросил это занятие))).
Где-то в инете есть статья "How to read the [censored] manual". На RSDN есть ее перевод на русский. Автору топика надо ее почитать...
Но в основном не на форумах, да и давно бросил это занятие))).
Где-то в инете есть статья "How to read the [censored] manual". На RSDN есть ее перевод на русский. Автору топика надо ее почитать...