| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Object Pascal: кроссплатформенные технологии > Удаление вхождения слова в текстовом файле |
| Автор: Agentum 3.3.2009, 21:45 |
| Помогите пожалуйста мыслями:надо удалить вхождение слова в текстовом файле.Как я понимаю чисто в текстовом файле нельзя так сделать.Я думаю что надо переписать его в типизированный файл строк и уже там удалять вхождение слова.Так получается? |
| Автор: Kbl4AH 3.3.2009, 22:55 | ||||
Добавлено @ 22:59 Если нужно удалить из исходного файла, то добавь в конце:
|
| Автор: Agentum 4.3.2009, 06:58 |
| Ой,а мне надо на паскале... |
| Автор: Agentum 4.3.2009, 07:29 |
| В принципе я понял что надо сделать,просто не знаю получится или нет на паскале...спасибо за помощь! |
| Автор: Kbl4AH 4.3.2009, 08:24 |
Почему же не получится? Все получится... |
| Автор: Kbl4AH 4.3.2009, 08:41 | ||
| И правда, не получится... щас... Добавлено через 10 минут и 44 секунды
|
| Автор: Agentum 4.3.2009, 17:32 |
| Вот накорябал...главную задачу делает,но почему то зацикливает паскаль на выводе текстового файла.Проверьте пожалуйста: program laba; uses crt; var OldF,NewF:Text; OldS,naim,slovo,st:string[30]; function Cut(const SubStr:string;var Str:string):string; begin while Pos(SubStr, Str) <> 0 do Delete(Str, Pos(SubStr, Str), Length(Substr)); Cut:=Str; end; begin clrscr; Assign(OldF, 'oldf.txt'); Reset(OldF); Writeln('vvod imeni novogo faila:'); readln(naim); writeln('vvedite slovo dlya udaleniy:'); read(slovo); Assign(NewF,naim); Rewrite(NewF); while not Eof(OldF) do begin Readln(OldF,OldS); Writeln(NewF,Cut(slovo, OldS)); end; Close(OldF); Close(NewF); reset(NewF); While not eof(NewF) do begin read(NewF,st); write(st); end; close(NewF); readkey; end. |
| Автор: Kbl4AH 4.3.2009, 18:25 | ||
| 1)У меня ругаеццо на несовместимость типов, поэтому я сделал var OldS: string; 2) сделай
3) Защиту сделай для случая, когда исходный файл не создан. |
| Автор: Agentum 4.3.2009, 20:52 |
| Все получилось...спасибо.хотя я не понимаю почему так плохо отреагировал на вывод содержимого файла... |
| Автор: Agentum 4.3.2009, 22:01 |
| Все понятно...я просто немного зациклился на типизированных файлах и поэтому реад пишу... |
| Автор: Agentum 11.3.2009, 17:00 |
| Возник еще вопрос...например у меня исходный файл такой:asdasd asd asd g g j a s.я удаляю слово аsd...при этом удаляется слово asdasd.как избавиться от этого? |
| Автор: Kbl4AH 12.3.2009, 12:34 | ||
| Для наглядности немного нарушил правила офрмления кода... Видоизменил функцию... В принципе - работает... Может стоит только пересмотреть список символов, которые могут быть до и после слова...
На оптимальность не претендую... |