powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как отредактировать тхт файл
5 сообщений из 5, страница 1 из 1
Как отредактировать тхт файл
    #33018038
Alex_smok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня. Извините за назойливость, но может все-таки кто подскажет. Перекопал хелпы - не нашел. Есть, скажем файл myfail.txt. Открываю его FOPEN(), записываю в него FPUTS(lnHandle, "Александр"), закрываю FCLOSE(). Теперь, скажем, мне надо на то же место в файле записать"Саша". Если повторить ту же процедуру, то получится "Саша
сандр". Если кто знает, подскажите, pls, каким макаром мне грохнуть эти оставшиеся байты. В хелпах есть, (это, что я нашел для работы с файлами) FPUTS() и FWRITE(), а вот про удаление как то не попадалось.
...
Рейтинг: 0 / 0
Как отредактировать тхт файл
    #33018067
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bigTxt=filetostr('myfail.txt')
bigTxt=strtran(bigTxt,'Саша','Александр')
strtofile('myfail',bigTxt)


извиняюсь, синтаксис точно не помню
...
Рейтинг: 0 / 0
Как отредактировать тхт файл
    #33018123
Alex_smok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cпасибо за совет. И, насколько я понял, для этого необходимо сначала сбросить весь файл в символьную переменную, ее отредактировать, и потом перезаписать весь файл. Получается, что сам файл редактировать нельзя. Мысль у меня была такая, думал, что по логике все-таки можно и файл редактировать.
...
Рейтинг: 0 / 0
Как отредактировать тхт файл
    #33018220
Crispy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Файл редактируется, только не вставкой а "наложением" поверх старого. Нужно учитывать позицию записи-чтения - она после каждой записи-чтения смещается на конец считанного-записанного. Можно сдвигать ее командой FSEEK относительно начала, текущей позиции или конца файла (3-ий параметр команды) на число байт во 2-ом параметре (типа FSEEK(file,-2,1) - на два назад). Можно изменять размер файла FSIZE. Но если нужно всавлять в него данные другой длины, чем старые - проще создавать новый и в цикле записывать в него построчно из старого файла до нужного места, а потом - изменив данные - продолжать до конца. После чего закрыв оба файла, новому - дать имя старого.
т.е. что-то вроде:

fold=fope('old.txt')
fnew=fcre('new.txt')
do whil !feof(fold)
a=fget(fold)
if ... условие, какую строку нужно изменить
a=... изменение
endif
=fwri(fnew,a)
enddo
=fclo(fold)
=fclo(fnew)
rename new.txt to old.txt
...
Рейтинг: 0 / 0
Как отредактировать тхт файл
    #33019691
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Alex_smok!

HELP FCHSIZE()
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как отредактировать тхт файл
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]