В данной инструкции показано, как сравнить два файла через программу на Go. Будет дан способ определить, являются ли файлы идентичными или нет. Также будет дан способ нахождения разницы между двумя файлами.

Как сравнить два файла в Go?

1. Создайте файл comparison.go со следующим содержимым:

Форум Гоферов

Мы работаем над форумом для программистов на Golang. Очень нужны модераторы которые хотят помочь с ответами для новичков и помочь в развитии Go-сообщества.

Go на Форум

Уроки, статьи и Видео

Мы публикуем в паблике ВК и Telegram качественные обучающие материалы для быстрого изучения Go. Подпишитесь на нас в ВК и в Telegram. Поддержите сообщество Go программистов.

Go в ВК Go в Telegram

2. Запустите код через go run comparison.go в главном терминале;
3. Посмотрите на результат:

Сравнение двух файлов через MD5 их содержимого

Сравнить два файла можно несколькими способами, в данной инструкции описано два основных. В первом делается сравнение всего файла через создание контрольной суммы (MD5) содержимого файла.

В инструкции одной из статей показано, как можно создать MD5 хеш содержимого файла. В таком случае функция getMD5SumString генерирует контрольную сумму которая являться строкой, а точнее шестнадцатеричным представлением байтового результата MD5. Затем MD5 хеш файлов сравниваются между собой.

Второй подход сравнивает файлы строка за строкой (в данном случае это содержимое строки). Если строки не совпадают, выводится знак x. Таким же способом можно сравнить бинарный контент, только вам нужно будет просканировать файл через блоки байтов (срезы байтов).

Понравилась статья?

Поддержи наш проект, чтобы мы могли создать больше хорошего контента!