Снипет для парсинга данных из очень большого файла

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
Здравствуйте!
Подскажите, пожалуйста, как спарсить данные из очень большого файла - 577МБ?
Стандартным способом через кубики не получается, выдает ошибку.

Считываю файл, присваиваю значение переменной.
Потом пытаюсь парсить из переменной регуляркой - <url>.*?</url>
В конструкторе регулярка работает, а в PM никак не хочет.

Может быть имеются методы обработки таких больших файлов?
Оперативки много - 16ГБ.

Помогите, плиз, разобраться.
 

AloneSlamer

Client
Регистрация
29.01.2013
Сообщения
1 404
Благодарностей
362
Баллы
83

Обращаем Ваше внимание на то, что данный пользователь заблокирован.
Не рекомендуем проводить с AloneSlamer какие-либо сделки.

я бы сделал батником
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 333
Благодарностей
5 431
Баллы
113
Если надо единоразово сделать, попробуйте notepad++
 

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
Нужно делать это ежедневно на автомате.
 
  • Спасибо
Реакции: Mikhail B.

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 660
Благодарностей
1 332
Баллы
113
а если разделить ваш файл на 10 - 15 файлов с одинаковым количеством строк, и потом вашей регуляркой работать с этими файлами, отработали с первым файлом, получили что хотели, удалили файл и так далее со всеми остальными
Вот тему нашел должно получится ------------> смотреть
 
Последнее редактирование:

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 106
Баллы
113
C#:
var sourceList = project.Lists["SourceList"]; // Исходный список
var outList = project.Lists["OutList"]; // Список с результатами
Regex reg = new Regex(@"<url>.*?</url>");
string str = string.Join("\r\n", sourceList);
lock (SyncObjects.ListSyncer)
{
    destList.AddRange(from Match match in reg.Matches(str) select match.Value);
}
1. Привяжите файлы к спискам
2. Запускать лучше в ZP, а не в PM.
 
  • Спасибо
Реакции: samsonnn

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)