Редактирование файла

  • Автор темы 11BOSS11
  • Дата начала
1

11BOSS11

#1
Вот у меня есть кодик с помощью которого я беру все строки файла последовательного доступа , обрабатываю их и вывожу на Print :

Код:
Sub Initialize
Dim text As String, fileNum As Integer
fileNum% =Freefile()
Open "D:\ФАЙЛ UTF8.txt" For Input As fileNum%
Do While Not Eof(fileNum%)
Line Input #1, text$
'обрабатываем строку
text$=text$+ " ЭТА СТРОКУ ОБРАБОТАНАЯ !"
Print text$ ' pechat odnoi stroki is faila
Loop
Close fileNum%
End Sub
и я вот не знаю, как когда я обработаю строчку сразу же заменить ею старую в этом же файле(чтобы после отработки агента этот файл еже был бы обработанным....).........
 

nvyush

Lotus team
22.04.2009
2 317
0
#2
Открываем временный файл на запись, туда складываем обработанные строки, закрываем файлы, старый удаляем, новый переименовываем.

Или открываем поток в памяти, туда складываем обработанные строки, закрываем файл, открываем его на запись и сохраняем в него данные из потока.
 
1

11BOSS11

#3
Код:
Sub Initialize
Dim KKK As Integer
KKK=200
Dim text As String, fileNum As Integer
fileNum% =Freefile()
Open "D:\ФАЙЛ UTF8.txt" For Input As fileNum%
fileNum2% =Freefile()
Open "D:\ФАЙЛ UTF8 2.txt" For Output As fileNum2%
Do While Not Eof(fileNum%)
Line Input #1, text$


text$=text$+ "ОБРАБОТАНО!"

Print text$ ' pechat odnoi stroki is faila
Write #fileNum2% , text$
Loop
Close fileNum%
Close fileNum2%
End Sub
Вот делаю таким вот образом....... почему оно дописывает кавычки к каждой строке во второй файл "ФАЙЛ UTF8 2.txt" ??
это можна как-нить убрать?
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#4
Если файлик не очень большой, то лучше воспользоваться классом NotesStream. Загрузить разом данные в переменную, обработать и выгрузить обратно.
 
1

11BOSS11

#5
Спастбки=)
ладненько вроде разобрался...:
сделал запись просто таким способом : Print #fileNum2%, text$

тема закрыта)