Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.27;
Скачать: CL | DM;

Вниз

Чтение файла. Помогите пожалуйста. -))   Найти похожие ветки 

 
Toxa_ua ©   (2005-11-07 20:40) [0]

Есть у меяня текстовый файл. Я посимвольно читаю строку этого фйла:
while not Eoln(FileName) do Read(FileName,Ch);
Как мне перейти на следующую строчку и продолжить чтение строки?


 
Джо ©   (2005-11-07 20:43) [1]

читай сразу построчно:
while not Eof(filevar) do ReadLn (filevar,stroka);


 
umbra ©   (2005-11-07 20:43) [2]

Не проще ли читать сразу всю строку? а "перейти на новую" просто - пропустите два символа (если файл создан в виндовс, это будут #13 и #10) и читайте посимвольно дальше


 
Toxa_ua ©   (2005-11-08 03:00) [3]

Читать всю строку не проще, т.к у меня в строке нахадятся несколько полей информации, разделенных символом "*" (хотя можно и строку, разобрав её потом по символам, но в моем случаем хотелось бы читать по символам). А как сам переход реализовать? -Чему присваивать надо символ с кодом #13 чтоб указатель установился в начало next строки (Readln не пожходит)?


 
Джо ©   (2005-11-08 03:22) [4]

В-общем, непонятно откуда такое странное желание читать именно посимвольно. Во-первых, физически читать оно будет все-равно НЕ посимвольно, а во-вторых, ты изначально обрекаешь себя на падение производительности из-за излишне частого обращения к Read. Но, тем не менее, вот прямой ответ на поставленный вопрос:

var
 Fv: TextFile;
 Ch: Char;
begin
 AssignFile (Fv,"d:\1.txt");
 Reset (Fv);
 while not Eof(Fv) do
 begin
   Read (Fv,Ch);
   // тут что-то делаем с символом
 end;
 CloseFile (Fv);
end;

Или, если угодно, даже так:

var
 Fv: TextFile;
 Ch: Char;
begin
 AssignFile (Fv,"d:\1.txt");
 Reset (Fv);
 while not Eof(Fv) do
 begin
   while not Eoln (Fv) do
   begin
     Read (Fv,Ch);
     // тут что-то делаем с символом
   end;
   ReadLn (Fv); // пропускаем #13#10
 end;
 CloseFile (Fv);
end;


 
Anatoly Podgoretsky ©   (2005-11-08 08:58) [5]

Toxa_ua ©   (08.11.05 03:00) [3]
Большой секрет, к строке тоже можно обращаться посимвольно - s[i]



Страницы: 1 вся ветка

Текущий архив: 2005.11.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
4-1127662855
Евгений Р.
2005-09-25 19:40
2005.11.27
изменение системного времени на компьютере


2-1131633888
Витольд
2005-11-10 17:44
2005.11.27
Нить Thread


14-1131002413
MBo
2005-11-03 10:20
2005.11.27
Пятничные задачки. Повтор нерешенного, и кое-что новое...


14-1130933341
konda
2005-11-02 15:09
2005.11.27
IP телефония


14-1131330279
Petr V . Abramov
2005-11-07 05:24
2005.11.27
проблемы Франциии