Darhazer Опубликовано 14 декабря, 2005 Жалоба Поделиться Опубликовано 14 декабря, 2005 Привет, Есть две версии файла и хочу записать только изменения (чтоб сделать пача) Вопрос: как сделать? Ок, читаем байт по байт и находим первий байт который различний Как определить если несколько байта добавлени, удалени или просто измени?А А то как я написал сейчась, если добавить 1 байт то програма определить всех после него как променени и пач будеть больше чем оригинальний файл. Спасибо Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 29 декабря, 2005 Жалоба Поделиться Опубликовано 29 декабря, 2005 (изменено) Darhazer: Хорошие алгоритмы, насколько я знаю, реализуются довольно сложно, с динамическим программированием. Проще использовать готовые программы. Word умеет сравнивать два документа, выводя объединенный текст и выделяя вставки и пропуски относительно первого документа. Есть также много специализированных программ. Вот несколько, правда, примерно половина из них shareware :) : WinMerge, Side by Side, FileDiff, CSDiff, Compare It, Active File Compare, ExamDiff. P.S. Кажется, сначала я не совсем понял вопрос - требуется сравнение именно бинарных, а не текстовых файлов? Это вроде бы умеет из приведенных ранее Examdiff, и еще можно посмотреть UltraCompare, FCWin и GNU проект DiffUtils. Изменено 30 декабря, 2005 пользователем Тролль Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Darhazer Опубликовано 2 января, 2006 Автор Жалоба Поделиться Опубликовано 2 января, 2006 Тролль: Что сложно уже сам узнал. Shurr подсказал ссылки на алгортими, но я не разобрался. Не разобрался и в изходниках WinMerge. А готовая программа не устраиваеть, мне нужно написать updater-а. Но решим проблему так: апдейт будет содержать весь файл и идентификация оригинального (примерно хэш). И если файл являеться оригинальний, просто заменяеть эго. Програма весить менее 10 MB, так что не так страшно, что апдейт будет ~10 MB, тем не менее, не будет качаться через Интернет :mellow: Спасибо Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.