Как получить разницу 2 csv файлов?

Есть необходимость в сравнении 2 csv фалов. Какой либо сортировки нет. Проблема в том, в файле около 100000000 записей.
  • Вопрос задан
  • 3502 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ну... я, как человек ленивый, сделал бы три скрипта. Первый - считывать исходный файл по 100'000 записей, сортировать и записывать в отдельные файлы. Второй - брать по два файла, сливать их с сортировкой в один, пока не останется один сортированный файл. Третий - читать два уже отсортированных файла и выводить разницу между ними.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
anyd3v
@anyd3v
diff / vimdiff и аналоги
Ответ написан
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
Если говорить об абстрактных данных, то ничего кроме обхода циклом и сравнения построчно не вижу. Если нужно сравнивать несколько разных файлов между собой, то конечно хорошо бы их вначале как-то отсортировать\разбить на блоки-файлы.
Возможно пригодятся функции php.net/function.fgetcsv \ php.net/function.fputcsv .
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы