Помощь - Поиск - Пользователи - Календарь
Полная версия: Текстовые Файлы
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
Dead.MorozZ
Помогите присвоить метке значение Текстового Файла. Мой код присваивает только первую строку из файла, в чем ошибка???
Код

var
  F: TextFile;
  S: String;
begin
  AssignFile(F, 'Text.txt');
  Reset(F);
  Read(F, S);
  Label1.Caption := S;
end;
volvo
А ты что, в Caption все содержимое файла затолкать хочешь?
Тогда читай так:
AssignFile(F, 'Text.txt');
Reset(F);
st := '';
While not eof(f) do begin
read(f, s); st := st + s + #13#10;
end;
Label1.Caption := st;


Если поместится, конечно. Все-таки строка ограничена 255 символами...
hardcase
Для работы с файлами в Делфи лучше использовать стримы - потоки.
TFileStream - для работы с файлами.

Ещё в принципе можно пользоваться TStringList "ом - у него есть метод LoadFromFile(const FileName: string)
function ReadAllFile(const FileName: string): string;
var S: TFileStream;
begin
S:=TFileStream.Create(FileName);
try
S.Reset;
SetString(Result,nil,S.Size);
S.ReadBuffer(pointer(Result)^,S.Size);
finally
S.Free;
end;
end;


function ReadAllFile(const FileName: string): string;
var S: TStringList;
begin
S:=TStringList.Create;
try
S.LoadFromFile(FileName);
Result:=S.Text;
finally
S.Free;
end;
end;

Первый вариант работает быстрее.
Чёта я сегодня добрый. Есть случаи когда файло текста большое и при загрузке нужно сделать так, чтоб приложение не зависало на долго. Т.е. организовать чтение по строкам без частого обращения к стриму (системе).

Вот класс, который позволяет прочитать построчно весь текстовый файл, не загружая его предварительно в память - использует постраничную загрузку.
volvo
hardcase
Ну, и на кой это все, если больше чем 255 символов ты все равно не прочтешь, ты не думал? Знаешь, как это называется? Из пушки - по воробьям...
hardcase
я просто считаю, что такие вещи как ФАЙЛОВЫЕ ПЕРЕМЕННЫЕ - устаревшие вещи. (Наверно привык просто к Сям)
И считаю использование их - не очень хорошим тоном программирования.

(кстати, про пушку эт что? про StrStrm?)


------------- сообщение администратора ----------------
Цитата
ФАЙЛОВЫЕ ПЕРЕМЕННЫЕ - устаревшие вещи. (Наверно привык просто к Сям)

Цитата
И считаю использование их - не очень хорошим тоном программирования.

ЭТО твое ЛИЧНОЕ мнение, понял ?

читай правила ВНИМАТЕЛЬНО!
Делаю предупреждение. (-1)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.