powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / чтение и одновременная запись в текстовый файл.
25 сообщений из 44, страница 1 из 2
чтение и одновременная запись в текстовый файл.
    #39833131
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как решить проблему одновременного чтения строк из текстового файла и пометкой данных строк в текстовом файле, как прочитанные?
Что бы не читать , случайно, второй раз.
Или это не проблема?
------------------------------------------------------------------------
Спасибо за ответ.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833134
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
регулярно читаю так
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Set fso = CreateObject("Scripting.FileSystemObject")
 Set txt = fso.OpenTextFile("*******\99.txt", 1)
 Do While Not txt.AtEndOfStream
*
 nomp = Trim(txt.ReadLine)
*
Loop


Пока не понадобилось проверять....
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833149
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58Что бы не читать , случайно, второй раз.При открытии файла как текстового потока для чтения указатель помещается в начало и при каждом чтении перемещается на начало непрочитанного хвоста. Сам он не смещается. Так что второй раз одно и то же не прочитаешь при всём желании - у него даже нет метода для перемещения указателя в направлении начала,- только если переоткрывать...
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833170
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

Я имею ввиду в следующую загрузку.
То есть - после обеда загружальщика.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833175
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311,

создали ФСО
Открыли файл
Читаем до конца...
а дальше - поясните - что происходит.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833180
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58а дальше - поясните - что происходит.Закрываем поток
Код: vbnet
1.
txt.Close
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833182
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833188
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833195
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58Я имею ввиду в следующую загрузку.Пфф... тогда сохраняйте где-то количество уже прочитанных строк, и при следующем открытии SkipLines.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833213
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,
Понятно, что можно где-то сохранить.
А в самом файле отметить, в строке - это не вариант?
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833216
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58А в самом файле отметить, в строке - это не вариант?То есть изменение файла - процедура допустимая? да не вопрос - вот только как минимум придётся его открывать не как текстовый поток, а для произвольного доступа. При этом однозначно потеряв возможность встроенного парсинга на строки.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833230
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

мда ....
ятахател - прочёл строку и тут же отметку в конце строки написать(==прочитано==).
значит фигвам....
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833259
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно открывать файл с рандом-доступом и в вашем случае методами api или писать компоненты-обёртки, чтобы их использовать внутри акцеса
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833273
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,
Спасибо.
Понятно.
То есть в моём случае - это безнадёжно.
Ну ладно. Буду искать выход.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833284
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833291
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58, может ты обрисуешь чего хочешь получить, а не как ты думаешь это получить

Так-то файл можно считать в память целиком даже средствами VBA без привлечения других сущностей. Далее его можно разбить на отдельные строки, работать с ними в любой последовательности, дописывать, удалять, добавлять. В конце переписать файл.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833292
час58, допустим "пометка", это спецсимвол в начале строки, например "#". А перевод строки в фыйле стандартный, т.е. vbCrLf. Тогда предлагаю вариант:
1. Читаете сразу все содержимое файла в переменную. Это можно сделать и средствами VBA, и FSO, и ADODB.Stream. После чтения закрываете файл.
2. Преобразуете текст в массив строк функцией Split v = Split(s, vbCrLf)
3. В цикле по массиву проверяете наличие "#". Если отсутствует - обрабатываете, затем дописываете "#" в начало строки. Пустые строки (могут быть в конце массива) игнорируете.
4. По завершении (или после обработки каждой строки) функцией Join преобразуете массив в текст s = Join(v, vbCrLf) и сохраняете в том же файле (замена содержимого).
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833301
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58Или это не проблема?

Не проблема, первое решение которое пришло на ум:
Читая файл, сразу открывай второй на запись и пиши в него построчно первый плюс в конце строки своё (==прочитано==), клади файл рядом с тем же именем + _прочитано.txt

Ну а дальше варианты:
- оставлять оба файла
- убить читаемый, переименовать записанный в имя убитого прочитанного...
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833305
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Панургчас58, может ты обрисуешь чего хочешь получить, а не как ты думаешь это получить

Так-то файл можно считать в память целиком даже средствами VBA без привлечения других сущностей. Далее его можно разбить на отдельные строки, работать с ними в любой последовательности, дописывать, удалять, добавлять. В конце переписать файл.
Панург истину глаголит озвуч проблему.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833311
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
час58прочёл строку и тут же отметку в конце строки написать(==прочитано==).Это означает, что тебе придётся перезаписать половину файла - всё от места вставки (включая вставку) и до конца. Диск не резиновый, он жёсткий, и на нём файл не "раздвигается", чтобы принять в середину горсть байтов. А вот перезаписать байт по определённому смещению, не вставляя и не удаляя байтов - это попроще...
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833324
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Панург,
ситуёвина такова.

Данные из текстового файла читаются построчно в таблицу.
При считывании строк файла - всякое может произойти...
И хотелось бы при последующем считывании данного файла, уже не заносить данные, которые уже ранее занесены в таблицу.
То есть пропускать строки, которые уже прошли обработку.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833327
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так это надо сравнение с табличными данными делать, а не файл импорта "портить"
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833328
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

Сегодня Туда меня уже посылали.
Спасибо.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833331
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneтак это надо сравнение с табличными данными делать, а не файл импорта "портить"
Можно и так.
Но это, наверное дольше будет по времени.
...
Рейтинг: 0 / 0
чтение и одновременная запись в текстовый файл.
    #39833333
Фотография час58
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кривцов Анатолий,

Спасибо за вариант.
...
Рейтинг: 0 / 0
25 сообщений из 44, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / чтение и одновременная запись в текстовый файл.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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