Как сравнить два файла, в чем у них различия (текст, Word/Excel-документы, Exe-файлы)

sravnit-faylyiПриветствую всех читателей!

Сегодняшняя заметка будет относиться к офисной тематике… (а точнее: речь пойдет о сравнении нескольких документов между собой).

Представьте, у вас есть парочка документов, в которых частично различается текст (например, где-то уже исправленный, а где-то ‘старый’, с ошибками…). И теперь нужно найти между ними различия, принять их к сведению, и собрать из 2-х файлов один.

Можно, конечно, сориентироваться по дате — однако, далеко не всегда такой подход будет уместен. Но вот если бы какая-то программа нашла и выделила несовпадающие символы (строки)… это было бы здорово!

Собственно, о нескольких подобных примерах и пойдет речь в этой заметке.

Нюансы: о каких файлах идет речь

Текстовые файлы

И так, начать заметку (я думаю) стоит с самых обычных текстовых файлов (коих большинство). Задача перед нами будет следующая: есть два почти одинаковых текстовых файла (в формате TXT), и нужно найти в них отличные строки и символы, и подсветить их (о чем я и сказал выше).

Для работы нам понадобится блокнот   (ссылка на офиц. сайт). Установка у программы стандартная (поэтому ее опускаю).

Далее делаем следующее:

  1. запускаем Notepad++ и открываем меню ‘Плагины / управление плагинами’ — в списке плагинов находим ‘Compare’ и соглашаемся на его установку (см. пример ниже &#x1f447,), Устанавливаем плагин в Notepad++

    Устанавливаем плагин в Notepad++

  2. затем открываем в программе два текстовых файла, которые нужно сравнить (стрелочка 1 на скрине ниже &#x1f447,). Далее переходим в меню ‘Плагины / Compare / Compare’ (или нажимаем сочетание Ctrl+Alt+C), Открываем два нужных файла и жмем кнопку сравнения

    Открываем два нужных файла и жмем кнопку сравнения

  3. в результате Notepad++ сравнивает построчно файлы и выделяет все различия: как в строках, так ив конкретных символах (даже, если разница всего в одну запятую или точку!). См. мои файлы ниже. &#x1f447, Места, где есть различия, были выделены!

    Места, где есть различия, были выделены! // Notepad++

Документы Word / Excel (+ текстовые в т.ч.)

Начну с MS Word…

Программа универсальная и позволяет сравнивать как документы формата Docx, так и обычные текстовые файлы (TXT, RTF и пр. форматы).

Делается это так (на примере Word 2019):

  1. сначала необходимо открыть оба файла в Word (как правило достаточно по нужному файла кликнуть правой кнопкой мыши и в меню указать, что требуется открыть в Word, см. пример ниже &#x1f447,), Открываем 2 файла в Word

    Открываем 2 файла в Word

  2. после необходимо перейти во вкладку ‘Рецензирование’ и кликнуть по инструменту ‘Сравнить / сравнить 2 версии документа’ (пример ниже &#x1f447,), Рецензирование - Сравнить (Word 2019)

    Рецензирование — Сравнить (Word 2019)

  3. далее Word попросит указать эти два документа — просто выбираем из списка исходный документ и измененный, Выбор документов

    Выбор документов

  4. в итоге эти документы будут автоматически проанализированы и все отличия выведены на экран (кстати, Word автоматически покажет все исправления!). &#x1f447, Что получается в итоге

    Что получается в итоге // Word подсчитал сколько было мест с исправлениями (в моем случае 8!).

Что касается Excel

Ох-хо-хо, здесь все не просто…

С одной стороны — в Excel есть десятки способов, как можно сравнить две таблички между собой, с другой — в зависимости от конкретной задачи в каждом случае нужно ‘всё подгонять’ под себя (универсального способа на все случаи жизни — нет!).

Ниже приведу лишь парочку наиболее простых вариантов (разумеется, есть много др. способов решения).

Вариант 1

  1. для начала необходимо скопировать (сочетания в помощь: Ctrl+C / Ctrl+V) обе таблички на один лист в Excel (в качестве примера у меня табличка с именами &#x1f447,), Пример двух табличек

    Пример двух табличек

  2. далее нужно выделить мышкой область с этими двумя таблицами и перейти в меню ‘Главная / Условное форматирование / повторяющиеся значения’ (см. пример ниже &#x1f447,), Выделяем таблицы, и вкл. повторяющиеся значения

    Выделяем таблицы, и вкл. повторяющиеся значения

  3. после, указать, что требуется выделить лишь ‘уникальные’ значения — и Excel автоматически подсветит уникальные строки (т.е. те, которые отличны в таблицах). Как это выглядит — показано ниже. На мой взгляд задачу можно считать решенной. Все отличия были найдены!

    Все отличия были найдены!

Вариант 2

В Excel есть одна довольно мощная функция ВПР — она позволяет сравнивать 2 таблицы и при нахождении чего-то ‘несовпадающего’ — выполнять условие (скажем, подставить значение из одной таблицы в другую). О том, как с ней работать — показано в одной моей прошлой статье (парочка ссылок ниже).

В помощь!

1) Excel: как сравнить 2 таблицы с помощью функции ВПР — см. простейший пример.

2) Повторяющиеся значения в Excel: как удалить дубликаты / уникальные строки.

Др. бинарные файлы Exe, Com и пр. (возможно без расширения)

Тема очень специфичная, и я включил ее в заметку только для общей информации.

Сравнить два EXE-файла (или любых других, у которых нет расширения, и вы даже не знаете их тип данных) можно с помощью спец. редактора шестнадцатеричных, десятичных и бинарных файлов. Например, один из доступных для начинающих — это   (ссылка на сайт разработчика).

Как с ней работать: сначала необходимо запустить программу и открыть в ней оба файла (это стандартно, как и в др. софте). Далее перейти в раздел ‘Tools / File Comparison / Compare Files’. &#x1f447,

Hex Editor Neo — инструмент сравнения

Hex Editor Neo — инструмент сравнения

В результате Hex Editor Neo автоматически разделит экран поровну на две части и подсветит несовпадающий код. &#x1f447,