Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Вниз

Работа с текстовыми файлами   Найти похожие ветки 

 
sedot   (2005-12-01 23:11) [0]

Такая задача: необходимо считывать из текстового файла my.txt строки и если в строке будет текст "To:" записать в этот же файл в эту же строку "To: ok".

var
f:textfile;
i:integer;
b:string;

begin

if opendialog.execute then
   assignfile (f, my.txt);

reset(f);
 while not Eof(f) do begin
   readln(f,a);
   i:=i+1;
   if trim(a)="To:" then begin
      b:=trim(a)+" ok";
      writeln(f,b,i);
      closefile(f);
      break;
      end;
    end;
end.

Пишет на writeln(f,b,i) ошибку i/o 105.

Подскажите где я ошибся.

Спасибо.


 
system ©   (2005-12-01 23:52) [1]

Попробуй после того как нашел строку:
1) закрыть файл
2) открыть его
3) for j:=0 to i-1 do
  readln(F);
write(f,b);


 
palva ©   (2005-12-02 00:21) [2]

Нет уж, если текстовый файл открыт для чтения (Reset), то записывать туда - не получится, да и что будет со строками, которые лежат ниже? Они наверно исчезнут? По хорошему надо одновременно обрабатывать два файла, один построчно читать, а потом ту же строку записывать во второй файл. Вот здесь можно будет проверить прочитанную строку на нужные символы, а записать уже дополненную.


 
Германн ©   (2005-12-02 02:23) [3]

Имхо. Нет никаких легальных способов редактировать файл! Кроме, весьма редкого режима "изменить значение одного байта или нескольких последовательно идущих" без изменения их количества.


 
begin...end ©   (2005-12-02 08:54) [4]

> palva ©   (02.12.05 00:21) [2]

> Нет уж, если текстовый файл открыт для чтения (Reset), то
> записывать туда - не получится

Справку читать.


 
Anatoly Podgoretsky ©   (2005-12-02 09:15) [5]

Текстовые файлы можно открыть только или на чтение или на запись, но нельзя на то и другое одновременно.
Да и со вставкой вне зависимости от типов файлов, не возможно вставить в середину, что то более большего размера, для этого надо переписывать весь файл, это же касается практически почти всех других протяженных объектов программирования.


 
begin...end ©   (2005-12-02 09:28) [6]

А, да, для текстовых я ошибся.



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

Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.014 c
14-1130933749
Анонимщики
2005-11-02 15:15
2005.12.18
Чемпионат сайта по шахматам


8-1121267512
Igor_thief
2005-07-13 19:11
2005.12.18
Работа с png изображениями?


4-1128525702
Максим
2005-10-05 19:21
2005.12.18
Информация о системе


14-1132836140
syte_ser78
2005-11-24 15:42
2005.12.18
существуюттли форумы для локальной сети?


2-1133258980
Malamba
2005-11-29 13:09
2005.12.18
трансформация строки в число ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский