0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
1 | |
.NET 4.x Прочесть и обработать текстовый файл "log.txt" в котором несколько миллионов строк02.07.2014, 22:58. Показов 2730. Ответов 30
Метки нет (Все метки)
Здравствуйте, уважаемые форумчане!
Необходимо прочесть и обработать текстовый файл "log.txt" в котором несколько миллионов строк. Как осуществить все с максимальной скоростью? (Пробовал с обычным текстом - все нормально, а как c "log.txt" - так начинает виснуть)
0
|
02.07.2014, 22:58 | |
Ответы с готовыми решениями:
30
Создать текстовый файл in.txt, куда записать несколько строк. Найти номер самой короткой строки Надо записать в текстовый файл log.txt строку Дан текстовый файл A.TXT. Сформировать новый файл из строк файла A.TXT, содержащих слово RUN дан текстовый файл input.txt, найти количество непустых строк в нем и записать в файл output.txt |
290 / 271 / 107
Регистрация: 10.06.2011
Сообщений: 696
|
|
03.07.2014, 15:44 | 2 |
Как у вас обрабатывается текст? Код в студию.
0
|
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,245
|
|
03.07.2014, 16:17 | 3 |
что значит "обработать"? вам нужно целиком весь файл хранить в памяти? я так не думаю. Читайте построчно через StreamReader
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
||||||
03.07.2014, 18:53 [ТС] | 4 | |||||
То есть нужно вывести строки, в которых встречаются слова из textbox'а. Пробовал через StreamReader - безбожно виснет...
0
|
1302 / 508 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
|
|
03.07.2014, 19:12 | 5 |
gefestbrest, раз столько много строк, я бы обрабатывал, наверно, через access, управляя им из приложения на VB.net. Как обсуждалось ранее на форуме - любая база данных быстрее обрабатывает большие объемы информации чем любой ЯП
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 19:14 [ТС] | 6 |
Я тоже так подумал, но нужно считывать только с текстового файла...
0
|
1302 / 508 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
|
|
03.07.2014, 19:16 | 7 |
gefestbrest, из аксеса подтягивать текстовый файл, это проще паренной репы А из VB управлять базой
0
|
Почетный модератор
21400 / 9134 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
|
|
03.07.2014, 19:24 | 8 |
emenem97, у ТС скорее всего, такая ситуация, что он не волен менять формат данных.
Вот ему дан лог-файл, который создается может быть вообще не в его программе, а ему его надо спарсить. Т.е. тот случай, когда выбирать не из чего
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 19:24 [ТС] | 9 |
А можно чуть поподробнее?
0
|
Почетный модератор
21400 / 9134 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
|
|
03.07.2014, 19:27 | 10 |
gefestbrest, миллион строк - понятие растяжимое.
Строки имеют свою длину и могут быть в 3 символа, а могут быть огромными. Вы лучше скажите, сколько весит в мегабайтах такой лог, может, кто чего и предложит
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 19:29 [ТС] | 11 |
0
|
Почетный модератор
21400 / 9134 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
|
|
03.07.2014, 19:34 | 12 |
Да, это не булки печь...
А что Вы из этого файла хотите получить? Пример куска лога и то что надо вытянуть - приведите. Ну и если там не сложно, то и сам лог бы, в архиве
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 19:44 [ТС] | 13 |
Имя определенного файла, пробел, дата его вызова. И нужно по конкретным датам или именам выводить необходимые списки
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 20:01 [ТС] | 15 |
Извиняюсь, сижу через 3g с лимитом, перекинуть не смогу..
То есть есть списки типа: file_1 25.01.2014 14:15:33 file_2 25.01.2014 14:16:11 ... file_n 25.01.2014 23:23:23 Я ввожу например "file_2" ну или "file" и получаю даты вызова всех файлов, чьи имена состоят из этих символов..
0
|
Почетный модератор
21400 / 9134 / 1083
Регистрация: 11.04.2010
Сообщений: 11,014
|
||||||
03.07.2014, 20:10 | 16 | |||||
Было подобное
Принцип такой:
2
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 20:26 [ТС] | 17 |
Большое спасибо, все работает, хотя и медленно..
А нельзя ли весь этот процесс каким-нибудь способом убыстрить? Я слышал про memory mapped files, но не в курсе его реализации
0
|
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 27
|
|
03.07.2014, 20:35 [ТС] | 19 |
Хорошо сказано)). Будем ждать матерых ай-тишников!
0
|
1302 / 508 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
|
|
03.07.2014, 20:44 | 20 |
gefestbrest, делайте через БД, как говорю, скорость значительно быстрее. Я частенько на работе обрабатываю файлы по 500-600 Мб текста и полей около 15, со сложными запросами за пару минут справляюсь.
1
|
03.07.2014, 20:44 | |
03.07.2014, 20:44 | |
Помогаю со студенческими работами здесь
20
Как при помощи FSO можно обработать такой (см.внизу)текстовый файл(1.txt) и вывести её на печать !? Имеется текстовый файл input.txt содержащий строки, переписать в текстовый файл filtered.txt каждое второе слово Дан текстовый файл input.txt, в котором хранятся целые числа Две текстовый файл input.txt, в котором хранятся целые числа Задача. Дан текстовый файл input.txt, в котором хранятся целые числа Построчно прочитать текстовый файл input.txt, отредактировать и записать в текстовый файл output.txt Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |