Текущий архив: 2006.09.03;
Скачать: CL | DM;
Вниз
ini файл Найти похожие ветки
← →
ZX48 © (2006-08-14 13:11) [0]Здаствуйте все! Подскажите плиз, как мне сделать запись в текстовый файл ini, а затем считать обратно эти данные. Причем нужно что бы определенные параметры записывались в отдельных строках, например что-то в этом роде:
[ini file]
Folder=c:\my folder
Param1=12
Text="rect"
← →
Плохиш © (2006-08-14 13:11) [1]TIniFile + F1
← →
ZX48 © (2006-08-14 13:12) [2]Не понял как редактировать пост - Delphi7, WinXP SP2
← →
TUser © (2006-08-14 13:14) [3]> Не понял как редактировать пост
никак
← →
ZX48 © (2006-08-14 13:16) [4]Ну не обязательно ini файл - это я к примеру привел. Может и расширение свое потом придется подставлять. Так что не покатит... Сейчас у меня вот что сделано:
...
begin
fn:= GetCurrentDir;
if FileExists("cfg.ini") then
begin
AssignFile(F, "cfg.ini");
Reset(F);
Readln(F,t);
CloseFile(F);
end;
...
Вот как здесь можно поступить?
← →
StriderMan © (2006-08-14 13:30) [5]да чем тебе INI не понравился? Для справки, ему можно дать любое расширение. Ответ дан в [1]
← →
ZX48 © (2006-08-14 13:31) [6]Спасибо!
← →
ZX48 © (2006-08-14 13:35) [7]А как TIniFile задекларировать?
← →
Джо © (2006-08-14 13:37) [8]> [7] ZX48 © (14.08.06 13:35)
> А как TIniFile задекларировать?
А вот так и задекларировать:var
IniFile: TIniFile;
← →
StriderMan © (2006-08-14 13:38) [9]
uses
...inifiles
...
var
ini: TIniFile
begin
ini := TIniFile.Create;
try
//Здесь пишешь/читаешь
finally
ini.Free;
end;
end;
← →
ZX48 © (2006-08-14 13:39) [10]Спасибо Джо. Про декларацию сам нашел :) Плохо что здесь редактировать нельзя посты
← →
rebroff (2006-08-14 13:39) [11]Привожу кусок кода из своей программы. Разберёшься?
Часть файла prov.тхт:
[mail]
auth=1
email={почтовый адрес}
host=smtp.mail.ua
port=25
login={логин}
pass={пароль}
Читаем:B>procedure TForm1.FormCreate(Sender: TObject);
var
ini:tinifile;
begin
ini:=tinifile.create("c:\Program Files\Borland\Delphi7\Projects\sms\prov.txt");
//контролы на форме заполн из ini-файла "prov.txt"
auth.Checked :=ini.readbool("mail","auth",true); email.Text:=ini.readstring("mail","email","default");
host.Text:=ini.readstring("mail","host","default");
port.Text:=ini.readstring("mail","port","default");
login.Text :=ini.readstring("mail","login","default");
pass.Text:=ini.readstring("mail","pass","default");
provider.Items.CommaText:=ini.readstring("main","provider_list","");
ini.free;
end;
Пишем:ini.writebool("mail","auth",auth.Checked);
ini.writestring("mail","email",email.Text);
ini.writestring("mail","host",host.Text);
ini.writestring("mail","port",port.Text);
ini.writestring("mail","login",login.Text);
ini.writestring("mail","pass",pass.Text);
ini.free;
← →
ZX48 © (2006-08-14 13:43) [12]Спасибо! Разберусь!
← →
SergP. (2006-08-14 13:48) [13]> [4] ZX48 © (14.08.06 13:16)
ini - файл - это не значит что у него обязательно расширение должно быть .ini
В данном случае подразумевался формат а не расширение...
← →
DprYg © (2006-08-14 14:11) [14]И еще: при обращении к Create файл уже должен существовать. Поэтому функцией FileExists нужно сначала проверить есть ли он. Если нет - создать (AssignFile, Rewrite, CloseFile).
← →
Плохиш © (2006-08-14 14:19) [15]
> DprYg © (14.08.06 14:11) [14]
> И еще: при обращении к Create файл уже должен существовать.
Правда?
← →
StriderMan © (2006-08-14 16:34) [16]
> DprYg © (14.08.06 14:11) [14]
> Плохиш © (14.08.06 14:19) [15]
> Правда?
нет, пошутил он :)
← →
Anatoly Podgoretsky © (2006-08-14 16:47) [17]Неудачно пошутил.
← →
DprYg © (2006-08-14 16:50) [18]Действительно, не очень удачная шутка...
← →
DprYg © (2006-08-14 16:55) [19]Ее причина была в том, что при вызове ini := TIniFile.Create("x.dat") этот файл создается в папке Windows, а не в текущей.
← →
StriderMan © (2006-08-14 17:19) [20]
> DprYg © (14.08.06 16:55) [19]
> Ее причина была в том, что при вызове ini := TIniFile.Create("x.
> dat") этот файл создается в папке Windows, а не в текущей.
>
тут уж как фишка ляжет.
конечно лучше явно сказать где инишник открывать.
← →
Плохиш © (2006-08-14 17:21) [21]
> DprYg © (14.08.06 16:55) [19]
> Ее причина была в том, что при вызове ini := TIniFile.Create("x.
> dat") этот файл создается в папке Windows, а не в текущей.
1. Как это относится к [14]?
2. Это документировано.
← →
ZX48 © (2006-08-14 17:38) [22]Всем спасибо! Со всем разобрался!
← →
Loginov Dmitry © (2006-08-14 18:11) [23]> тут уж как фишка ляжет.
Почему то она всегда ложится в папку Windows
← →
StriderMan © (2006-08-14 18:41) [24]
> Loginov Dmitry © (14.08.06 18:11) [23]
хм.. да, в хэлпе так написано. Если честно никогда не пробовал, всегда указывал полный путь.
← →
Anatoly Podgoretsky © (2006-08-14 18:56) [25]DprYg © (14.08.06 16:55) [19]
Так справку надо читать, а не гадать.
← →
DprYg © (2006-08-14 19:13) [26]Просто мне надо читать справку, а не некоторые неумные книги...
← →
ZX48 © (2006-08-15 12:13) [27]Вопрос. При запуске приложение выдает ошибку "Не выполнена проверка подлиности". В чем может быть проблема?
← →
ZX48 © (2006-08-15 12:31) [28]Вопрос снят. Разобрался.
Страницы: 1 вся ветка
Текущий архив: 2006.09.03;
Скачать: CL | DM;
Память: 0.53 MB
Время: 0.048 c