![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Загрузка определенной строки из файла
Ultimate © (2008-05-17 16:20:00)У меня есть программа.
Мне необходимо сделать так, чтобы из имеющегося файла path.ini читалась строка, номер которой мне нужен... Нужна функция.
например:
function LoadPathFromFile(ns:integer):string;
где ns - номер строки.
Помогите пожалуйста!!!
Ultimate (2008-05-17 17:00:00) [1]Спасибо! Теперь тока остается мелочи подправить...
TStas (2008-05-17 16:39:00) [2]Удалено модератором
TStas (2008-05-17 16:29:00) [3]Блин! Сразу трое ответили:)
Сергей М. (2008-05-17 16:29:00) [4]MyIniFile := TString List.Create;
TStas (2008-05-17 16:28:00) [5]ЕСть два способа: первый - загрузить в TStringList весь этот самый path.ini, выбрать оттуда нужную строку, только у нее номер будет на 1 меньше, а потом убить безжалостно сам список; а второй - читать из файла строки в какую-то переменную, а как до нужной дойдёте, закончить чтение.
function LoadPathFromFile(ns:integer):string;
var
List: TStringList;
begin
List := TStringList.Create;
List.LoadFromFile(path.ini); //Только лучше здесь толный путь к файлу написать, а то косяки могут быть
Dec(ns); //Т. к. в списке нумерация с нуля идёт
Result := List[ns];
List.Free; //Убили безжалостно ненужный список
end;
Токмо эту ф-цию надо в защищённом блоке вызывать, т. к. масса поводов для ошибок: нету файла, номер строки не тот и т. д.
Сергей М. (2008-05-17 16:28:00) [6]Носи не стаптывай:
function LoadPathFromFile(ns:integer):string;
var
MyIniFile: TStrings;
begin
MyIniFile := TStrings.Create;
try
MyIniFile.LoadFromFile('path.ini ');
Result := MyIniFile[ns];
finally
MyIniFile.Free;
end;
end;
Германн (2008-05-17 16:24:00) [7]
> Ultimate © (17.05.08 16:20)
Читать файл построчно пока не будет прочитана нужная. Или считать весь файл в TStringList и в нем уже найти строку с заданным номером.