![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
помогите кто чем может!
из файла нужно прочитать и вставить в программу (а именно в label) текст, причем при определенном значении переменной в программе должна читаться определенная строка из файла. таких переменных в программе несколько. с помощью каких операций можно это сделать? |
|
#2
|
||||
|
||||
|
У чтения текстового файла есть функция EOLN - чтение до конца строки.
А также EOF - чтение до конца файла. Пользоваться ими примерно можно так: Код:
... // пока не конец файла While not(EOF(F)) do begin // пока не конец строки: While not(EOLN(F)) do begin ... end; end; Ну а дальше простая запись в нужную вам переменную... (внутри циклов). |
|
#3
|
|||
|
|||
|
нужно, чтобы при определенном значении переменной в программе читалась определенная строка из файла. допустим у нас есть переменная "А". если она =2 то читается 10 строчка файла. если =4 то 23я. и тд.
|
|
#4
|
||||
|
||||
|
Во первых: файл у вас типизированный или текстовый?
Во вторых: нету определенной функции для чтения определенной строки у текстового файла (у типизированного есть seek), поэтому чтобы читать определенную строчку из текстового файла, есть 2 варианта: 1. Записать весь текстовый файл в переменную например A: TStringList, а потом обращаться к нужной строчке так: A.String[i]; 2. Читать все строчки, пока не дойдем до нужной. ЗЫ я бы делал 1 вариант так: Код:
var
A: TStrinList;
...
FormCreate
A := TStringList.Create;
//читаю:
A.LoadFromFile('путь к вашему текстовому файлу.txt');
...
И вот что вам надо, ваша строчка:
Case x of // если х = 2, то 10 строчка:
...
2: A.String[10] - и будет нужная вам строка.
3:
...
end;
...
FormDestroy
A.Free;Последний раз редактировалось v1s2222, 31.10.2010 в 21:19. |
|
#5
|
|||
|
|||
|
A.String[10] - по-моему так будет читаться 10й символс стоки, а не 10я строка файла? или я не прав? у меня файлс расширенем .тхт. а переменная А у вас какого типа? строковая?
|
|
#6
|
||||
|
||||
|
Не A.String[10], а A.Strings (я ошибся)[10] - будет 10 строка, т.к. у меня переменная не строковая, а TStringList, это можно сказать массив строк.
Вот пример работы с TStringList: Код:
var
s: TStringList;
begin
s := TStringList.Create;
s.Add('hello');
s.Add('a');
s.Add('c');
s.Add('b');
// s.SaveToFile(path); // сохранение в файл
// s.LoadFromFile(path); // загрузка из файла
// s.Sort; // сортировка
s.Strings[1] - вернет "а", т.к. элементы начинаются с нуля.
s.Free; |