Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2007, 11:16   #1
kl45gp
Пользователь
 
Регистрация: 28.03.2007
Сообщений: 25
По умолчанию HELP! Как мне вытащить текст из файла?

Как мне вытащить из txt файла его содержимое???? плизззззз

У меня получилось вытащить только одну строчку вот:

procedure TForm1.loading_map();
var
FileMap:Textfile;
S:string;
begin//1
AssignFile(FileMap,'./maps/map_go.txt');
Reset(FileMap);
Read(FileMap,S);
label1.Caption:=S;
end;//1

заранее Спасибо!
... если программист играет в игры на работе, то либо у него мало работы и большая зарплата, либо у него много работы и маленькая зарплата...
kl45gp вне форума Ответить с цитированием
Старый 12.06.2007, 12:58   #2
mrandrey
Форумчанин
 
Регистрация: 30.03.2007
Сообщений: 124
По умолчанию

смотри на сколько все просто:

procedure TForm1.loading_map();
var
FileMap:Textfile;
S:string;
begin//1
AssignFile(FileMap,'./maps/map_go.txt');
Reset(FileMap);
repeat
Readln(FileMap,S);
memo1.lines.add(S);
until eof(filemap);
closefile(filemap);
end;//1
Тут без 100г не розберешся.....
Спасибо не нужно, а на весы слева кликнуть не помешает!!!
mrandrey вне форума Ответить с цитированием
Старый 12.06.2007, 14:40   #3
kl45gp
Пользователь
 
Регистрация: 28.03.2007
Сообщений: 25
По умолчанию

Спасибо! В memo получилось! но вот в label никак! покажи пожалуйста такой же пример с label и если можешь объясни для чего нужны эти команды: repeat, until eof(filemap), closefile(filemap).

... если программист играет в игры на работе, то либо у него мало работы и большая зарплата, либо у него много работы и маленькая зарплата...
kl45gp вне форума Ответить с цитированием
Старый 12.06.2007, 15:07   #4
AidarBik
Форумчанин
 
Регистрация: 12.06.2007
Сообщений: 130
По умолчанию

Цитата:
Сообщение от kl45gp Посмотреть сообщение
Спасибо! В memo получилось! но вот в label никак! покажи пожалуйста такой же пример с label и если можешь объясни для чего нужны эти команды: repeat, until eof(filemap), closefile(filemap).

В Label ты текст и не поместишь, потому что в тексте не одна строка(TStrings), а в Label можно поместить только одну (String).
repeat
<оператор>
until <условие>
Это оператор цикла. <оператор> будет выполняться до тех пор пока не будет выполнено <условие>.
Eof() - конец файла.
CloseFile() - закрытие файла.
AidarBik вне форума Ответить с цитированием
Старый 12.06.2007, 15:45   #5
kl45gp
Пользователь
 
Регистрация: 28.03.2007
Сообщений: 25
По умолчанию

О Г Р О М Н О Е СПАСИБО! буду знать!

если можно, то ещё вопорс...
А если мне надо вывести только например пятую строку, тогда как?
... если программист играет в игры на работе, то либо у него мало работы и большая зарплата, либо у него много работы и маленькая зарплата...
kl45gp вне форума Ответить с цитированием
Старый 12.06.2007, 15:51   #6
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
По умолчанию

Если нужно вывести строку из Memo, то
Label.Caption := Memo.Lines[4]; // Отсчет начинается с нуля!

А если пятую строку из файла, то нужно завести переменную-счетчик, увеличивать ее на 1 при чтении каждой строки и if <счетчик> = 5 then ...
Jeni вне форума Ответить с цитированием
Старый 12.06.2007, 15:57   #7
kl45gp
Пользователь
 
Регистрация: 28.03.2007
Сообщений: 25
По умолчанию

ясно! спасибо!
... если программист играет в игры на работе, то либо у него мало работы и большая зарплата, либо у него много работы и маленькая зарплата...
kl45gp вне форума Ответить с цитированием
Старый 14.06.2007, 22:57   #8
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

Цитата:
В Label ты текст и не поместишь
да ну...
procedure TForm1.loading_map();
var
FileMap:Textfile;
S:string;
begin//1
AssignFile(FileMap,'./maps/map_go.txt');
Reset(FileMap);
repeat
Readln(FileMap,S);
label1.caption:=label1.caption+S+#1 0#13; //вот и всё
until eof(filemap);
closefile(filemap);
end;

//внизу Трофимов Александр правильно заметил, что изначально файл может быть пуст. Вместо цикла repeat лучше использовать While.

Последний раз редактировалось zetrix; 16.06.2007 в 20:06.
zetrix вне форума Ответить с цитированием
Старый 15.06.2007, 07:59   #9
Трофимов Александр
Форумчанин
 
Аватар для Трофимов Александр
 
Регистрация: 03.11.2006
Сообщений: 321
По умолчанию

procedure TForm1.loading_map();
var
FileMap:Textfile;
S:string;
begin//1
{$I-}
AssignFile(FileMap,'./maps/map_go.txt');
Reset(FileMap);
{$I+}
If IOResult=0 then //файл изначально может отсутствовать
begin
repeat
if not SeekEof(fileMap) do // файл изначально может быть пустым
begin
Readln(FileMap,S);
label1.caption:=label1.caption+S+#1 0#13; //вот и всё
end;
until eof(filemap);
closefile(filemap);
end;
end;
Трофимов Александр вне форума Ответить с цитированием
Старый 16.06.2007, 17:26   #10
kl45gp
Пользователь
 
Регистрация: 28.03.2007
Сообщений: 25
По умолчанию

Спасибо В С Е М!
... если программист играет в игры на работе, то либо у него мало работы и большая зарплата, либо у него много работы и маленькая зарплата...
kl45gp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вывести из текстового файла на экран русский текст? Mischa Помощь студентам 8 12.03.2008 06:23
текст из файла -> переменная regedit2 Общие вопросы C/C++ 5 29.12.2007 01:25
как запустить приложение из к примеру текст файла!!! Volkogriz Общие вопросы Delphi 12 12.10.2007 12:27
Button1 и на Form2 открылся текст из файла (таблица)в StringGrid1. KSP Общие вопросы Delphi 2 19.09.2007 18:51
Загрузить текст из файла в мемо Teen4jump Общие вопросы Delphi 2 17.08.2007 21:05