Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / VB.NET Начать читать файл из строки указанной мной / 25 сообщений из 27, страница 1 из 2
04.07.2019, 07:27
    #39833626
shoh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Начать читать файл из строки указанной мной
Например файл имеет 10млн. строк и мне нужно читать только строки начиная с 8млн. до 10млн.
Как можно указать при чтение файла номер строки для старта чтении ?
...
Рейтинг: 0 / 0
04.07.2019, 07:46
    #39833632
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
В общем случае никак. Просто читать с начала, считать строки и обрабатывать нужные.

В текстовом файле строки переменной длины, поэтому невозможно перейти на строку с нужным номером.
...
Рейтинг: 0 / 0
04.07.2019, 10:00
    #39833686
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Dima TВ текстовом файле строки переменной длины, поэтому невозможно перейти на строку с нужным номером.

кто вам такое сказал? ничего не запрещает в текстовом файле использовать строки фиксированной длинны
автор тебе нужно найти в файле 8 млн переносов строк и начать чтения. Что тут сложного?
если файл большой и статический, возможно имеет смысл создать индекс строк
...
Рейтинг: 0 / 0
04.07.2019, 10:04
    #39833689
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
или грузануть в БД, если работа с файлом требуется постоянно
...
Рейтинг: 0 / 0
04.07.2019, 10:21
    #39833701
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Roman Mejtesкто вам такое сказал? ничего не запрещает в текстовом файле использовать строки фиксированной длинны
Это не ко мне, а к ТС. Ему видней можно или нельзя, он не указал может ли он влиять на формирование этого файла.

Я писал:
Dima TВ общем случае ...
...
Рейтинг: 0 / 0
04.07.2019, 10:35
    #39833708
shoh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Shocker.Pro,

Было бы отлично, если смог сразу импортировать в БД. Файл логов огромный и обновляется в онлайне.
...
Рейтинг: 0 / 0
04.07.2019, 10:36
    #39833710
shoh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
нашел решение

Dim LineNumber As Integer
LineNumber = 55555

Do Until LineNumber >= 64000

myLine = File.ReadAllLines("C:\Tmp\111.txt").ElementAt(LineNumber).ToString
LineNumber =LineNumber +1
loop
...
Рейтинг: 0 / 0
04.07.2019, 10:37
    #39833712
shoh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
shoh,

этот вариант медленновато конечно, но работает
...
Рейтинг: 0 / 0
04.07.2019, 10:42
    #39833716
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
shohshoh,

этот вариант медленновато конечно, но работает
Там в цикле каждый раз полное чтение файла происходит. Вынеси чтение до цикла
Код: vbnet
1.
2.
3.
4.
AllFile = File.ReadAllLines("C:\Tmp\111.txt")
Do ...
myLine = AllFile.ElementAt(LineNumber).ToString
...
...
Рейтинг: 0 / 0
04.07.2019, 11:56
    #39833753
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
авторБыло бы отлично, если смог сразу импортировать в БД. Файл логов огромный и обновляется в онлайне.
сохраняй лог сразу в базе, в чем проблема? а так всё просто, берем лог файл и читаем его, можно открыть лог файл на чтения не блокируя запись в файл. И поток периодически проталкиваем в базу данных.
...
Рейтинг: 0 / 0
04.07.2019, 14:02
    #39833837
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Можно собрать статистику по файлу и периодически обновлять ее.
Типа позиции каждой 1000 строки и т. д.
...
Рейтинг: 0 / 0
04.07.2019, 14:21
    #39833850
Pavel55
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
в этой строке тип переменной

Dim LineNumber As Integer

лучше заменить на Long
...
Рейтинг: 0 / 0
04.07.2019, 14:29
    #39833858
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Dima Tshohshoh,

этот вариант медленновато конечно, но работает
Там в цикле каждый раз полное чтение файла происходит. Вынеси чтение до цикла
Код: vbnet
1.
2.
3.
4.
AllFile = File.ReadAllLines("C:\Tmp\111.txt")
Do ...
myLine = AllFile.ElementAt(LineNumber).ToString
...

Оh, god.... Зачем выносить? Нафига тут вообще цикл, если есть Skip()?
...
Рейтинг: 0 / 0
04.07.2019, 18:12
    #39833996
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Shocker.Proили грузануть в БД, если работа с файлом требуется постоянно
+1
...
Рейтинг: 0 / 0
04.07.2019, 18:13
    #39833997
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
shohнашел решение

Dim LineNumber As Integer
LineNumber = 55555

Do Until LineNumber >= 64000

myLine = File.ReadAllLines("C:\Tmp\111.txt").ElementAt(LineNumber).ToString
LineNumber =LineNumber +1
loop
Очень плохое решение
...
Рейтинг: 0 / 0
05.07.2019, 05:53
    #39834139
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Опять изобретение велосипеда?
https://www.google.com/search?q=text log viewer windows
...
Рейтинг: 0 / 0
05.07.2019, 12:48
    #39834327
fkthat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Мля. Что, в очередной раз написали логгирование через джоппу System.IO ("его хватает, нахрен что-то еще в проект тянуть" (с)), а теперь не знаете что с этими миллионострочными файлами логов делать?
...
Рейтинг: 0 / 0
05.07.2019, 13:06
    #39834338
fkthat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Код: powershell
1.
PS> Get-Content .\very-large.log | Select-Object -Skip 100500 -First 12
...
Рейтинг: 0 / 0
09.07.2019, 08:58
    #39835306
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
fkthatМля. Что, в очередной раз написали логгирование через джоппу System.IO ("его хватает, нахрен что-то еще в проект тянуть" (с)), а теперь не знаете что с этими миллионострочными файлами логов делать?Плох не System.IO, а голова, которая не догадалась делать лог с разбитием на файлы по суткам или по объему.
...
Рейтинг: 0 / 0
09.07.2019, 09:19
    #39835314
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
Antonariy,

логгер сам разбиение на файлы может сделать
...
Рейтинг: 0 / 0
09.07.2019, 15:26
    #39835508
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
есть еще System.IO.Log
...
Рейтинг: 0 / 0
09.07.2019, 19:13
    #39835665
iskatelsql
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
В качестве извращения можно параллельно запустить программку, которая раз в минуту (полчаса, час) будет записывать лог вида "датавремя" - "размер файла" и уже основываясь на этой инфе искать нужный фрагмент.
...
Рейтинг: 0 / 0
11.07.2019, 01:14
    #39836135
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
харе уже блин:

1. писать огромные логи гигабайтовых размеров, пора уже тяжёлым сапогом пинать по голове за такое -- логи нужно разбивать на небольшие файлы, которые можно прочесть в любом редакторе, использовать ротацию
2. вообще использовать текстовые логи как основное средство ведения журналов, есть ELK, Graylog, etc. -- на выходе нормальная работа с журналом без дебильных приплясываний с грепом, которые вызывают лишь жалость
...
Рейтинг: 0 / 0
11.07.2019, 09:59
    #39836192
fkthat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
hVostt,

Мы уже сто лет как серилогом structure log в монгу пишем, еще и индексируем для поиска. Файло оно вообще уже как-то древность, только как временное логирование на время разработки.
...
Рейтинг: 0 / 0
11.07.2019, 21:48
    #39836585
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VB.NET Начать читать файл из строки указанной мной
fkthat,

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


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