Чем двоичный файл отличается от текстового файла?

Обновлено: 29.06.2024

В чем разница между текстовыми файлами и двоичными файлами? Каковы расширения их имени файла?

Текстовые файлы и двоичные файлы представляют собой два типа файлов, где двоичные файлы хранят данные в двоичном формате, а текстовые файлы хранят данные в формате букв и цифр. Двоичные файлы имеют расширение .bin, а текстовые файлы имеют расширение .txt

Двоичные файлы — это файлы, в которых данные хранятся в двоичном формате. И расширение двоичных файлов — .bin. Когда мы говорим о текстовых файлах, они хранят данные в виде букв, цифр, специальных символов. Расширение текстовых файлов — .txt

Текстовый файл хранит данные в виде букв, цифр и других специальных символов, сохраняя их значения ASCII и в удобочитаемом формате. например, любой файл с расширением .txt, .c и т. д. тогда как двоичный файл содержит последовательность или набор байтов, которые не имеют удобочитаемого формата. текстовые файлы следуют некоторым простым правилам, тогда как двоичные файлы — нет. оба являются потоком байтов. в двоичных файлах у них нет понятия «записей», ни повторяющихся записей данных фиксированной длины, ни потока данных, который следует согласованным правилам/ограничениям для диапазонов/значений данных, которые затем позволяют нам реализовывать записи с переменной стороной. Двоичные файлы битком набиты байтами со значениями от 0,255.

Все файлы можно отнести к одному из двух форматов — двоичному или текстовому. Два типа файлов могут выглядеть одинаково на первый взгляд, но данные в них кодируются по-разному. Хотя и двоичные, и текстовые файлы содержат данные, хранящиеся в виде последовательности битов (двоичных значений 1 и 0), биты в текстовых файлах представляют собой символы, а биты в двоичных файлах представляют пользовательские данные.
Двоичные файлы
Двоичные файлы обычно содержат последовательность байтов или упорядоченные группы из восьми битов. При создании пользовательского формата файла для программы разработчик упорядочивает эти байты в формате, в котором хранится необходимая информация для приложения. Форматы двоичных файлов могут включать в себя несколько типов данных в одном файле, например изображения, видео и аудиоданные. Эти данные могут быть интерпретированы вспомогательными программами, но в текстовом редакторе они будут отображаться как искаженный текст. Ниже приведен пример файла изображения .PNG, открытого в средстве просмотра изображений и текстовом редакторе.
Как видите, средство просмотра изображений распознает двоичные данные и отображает изображение. Когда изображение открывается в текстовом редакторе, двоичные данные преобразуются в нераспознаваемый текст. Однако вы можете заметить, что часть текста читабельна. Это связано с тем, что формат PNG включает небольшие разделы для хранения текстовых данных. Текстовый редактор, хотя и не предназначен для чтения файлов этого формата, тем не менее отображает этот текст при открытии файла. Многие другие типы двоичных файлов также содержат разделы читаемого текста. Поэтому можно узнать некоторую информацию о неизвестном типе двоичного файла, открыв его в текстовом редакторе.

Двоичные файлы часто содержат заголовки, которые представляют собой байты данных в начале файла, идентифицирующие содержимое файла. Заголовки часто включают тип файла и другую описательную информацию. Например, на изображении выше текст «PNG» указывает на то, что файл является изображением PNG. Если файл имеет недопустимую информацию в заголовке, программы могут не открыть файл или сообщить, что файл поврежден.

Текстовые файлы
Текстовые файлы имеют более строгие ограничения, чем двоичные файлы, поскольку они могут содержать только текстовые данные. Однако, в отличие от бинарных файлов, вероятность их повреждения меньше. В то время как небольшая ошибка в двоичном файле может сделать его нечитаемым, небольшая ошибка в текстовом файле может просто проявиться после открытия файла. Это одна из причин, по которой Microsoft перешла на сжатый текстовый формат XML для типов файлов Office 2007.

Текстовые файлы можно сохранять как в формате обычного текста (.TXT), так и в формате расширенного текста (.RTF). Типичный текстовый файл содержит несколько строк текста, за каждой из которых следует символ конца строки (EOL). Маркер конца файла (EOF) помещается после последнего символа, который сигнализирует о конце файла. Файлы форматированного текста используют аналогичную файловую структуру, но могут также включать стили текста, такие как выделение полужирным шрифтом и курсивом, а также информацию о форматировании страницы. Как обычный текст, так и форматированный текст включают схему (кодировка символов | кодировка символов), которая определяет, как символы интерпретируются и какие символы могут отображаться.

Поскольку текстовые файлы имеют простой стандартный формат, многие программы могут читать и редактировать текстовые файлы. К распространенным текстовым редакторам относятся Microsoft Notepad и WordPad, поставляемые вместе с Windows, и Apple TextEdit, поставляемый с Mac OS X.

Все файлы можно отнести к одному из двух форматов — двоичному или текстовому. Два типа файлов могут выглядеть одинаково на первый взгляд, но данные в них кодируются по-разному.Хотя и двоичные, и текстовые файлы содержат данные, хранящиеся в виде последовательности битов (двоичных значений 1 и 0), биты в текстовых файлах представляют собой символы, а биты в двоичных файлах представляют пользовательские данные.

В то время как текстовые файлы содержат только текстовые данные, двоичные файлы могут содержать как текстовые, так и пользовательские двоичные данные.

Двоичные файлы

Двоичные файлы обычно содержат последовательность байтов или упорядоченные группы из восьми битов. При создании пользовательского формата файла для программы разработчик упорядочивает эти байты в формате, в котором хранится необходимая информация для приложения. Форматы двоичных файлов могут включать в себя несколько типов данных в одном файле, например изображения, видео и аудиоданные. Эти данные могут быть интерпретированы вспомогательными программами, но в текстовом редакторе они будут отображаться как искаженный текст. Ниже приведен пример файла изображения .PNG, открытого в средстве просмотра изображений и текстовом редакторе.

Как видите, средство просмотра изображений распознает двоичные данные и отображает изображение. Когда изображение открывается в текстовом редакторе, двоичные данные преобразуются в нераспознаваемый текст. Однако вы можете заметить, что часть текста читабельна. Это связано с тем, что формат PNG включает небольшие разделы для хранения текстовых данных. Текстовый редактор, хотя и не предназначен для чтения файлов этого формата, тем не менее отображает этот текст при открытии файла. Многие другие типы двоичных файлов также содержат разделы читаемого текста. Поэтому можно узнать некоторую информацию о неизвестном типе двоичного файла, открыв его в текстовом редакторе.

Двоичные файлы часто содержат заголовки, которые представляют собой байты данных в начале файла, идентифицирующие содержимое файла. Заголовки часто включают тип файла и другую описательную информацию. Например, на изображении выше текст «PNG» указывает на то, что файл является изображением PNG. Если файл имеет недопустимую информацию в заголовке, программы могут не открыть файл или сообщить, что файл поврежден.

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

Текстовые файлы имеют более строгие ограничения, чем двоичные файлы, поскольку они могут содержать только текстовые данные. Однако, в отличие от бинарных файлов, вероятность их повреждения меньше. В то время как небольшая ошибка в двоичном файле может сделать его нечитаемым, небольшая ошибка в текстовом файле может просто проявиться после открытия файла. Это одна из причин, по которой Microsoft перешла на сжатый текстовый формат XML для типов файлов Office 2007.

Текстовые файлы можно сохранять как в формате обычного текста (.TXT), так и в формате расширенного текста (.RTF). Типичный текстовый файл содержит несколько строк текста, за каждой из которых следует символ конца строки (EOL). Маркер конца файла (EOF) помещается после последнего символа, который сигнализирует о конце файла. Файлы форматированного текста используют аналогичную файловую структуру, но могут также включать стили текста, такие как выделение полужирным шрифтом и курсивом, а также информацию о форматировании страницы. Как обычный текст, так и форматированный текст включают схему (кодировка символов | кодировка символов), которая определяет, как символы интерпретируются и какие символы могут отображаться.

Поскольку текстовые файлы имеют простой стандартный формат, многие программы могут читать и редактировать текстовые файлы. К распространенным текстовым редакторам относятся Microsoft Notepad и WordPad, поставляемые вместе с Windows, и Apple TextEdit, поставляемый с Mac OS X.

Неизвестные файлы

Если файл открывается и отображает в основном искаженный текст, это двоичный файл. Хотя файл не предназначен для открытия в текстовом редакторе, в тексте могут быть некоторые подсказки, раскрывающие информацию о типе файла, как в приведенном выше примере PNG. Это может помочь вам определить, какая программа вам нужна, чтобы правильно открыть файл. Наконец, если файл не открывается в текстовом редакторе, это двоичный файл, который можно открыть только с помощью соответствующей программы.

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

Оглавление

1. Различия между текстовым и двоичным файлом

  • Текстовый файл хранит данные в виде букв, цифр и других специальных символов, сохраняя их значения ASCII и в удобочитаемом формате. Например, любой файл с расширением .txt, .c и т. д. Принимая во внимание, что двоичный файл содержит последовательность или набор байтов, которые не имеют удобочитаемого формата. Например, файлы с расширением .exe, .mp3 и т. д. Он представляет пользовательские данные.
  • Небольшая ошибка в текстовом файле может быть распознана и устранена при ее обнаружении. Принимая во внимание, что небольшая ошибка в двоичном файле повреждает файл, и ее нелегко обнаружить.
  • Поскольку данные не могут быть прочитаны человеком, это также повышает безопасность контента, поскольку может быть невозможно получить данные, если структура неизвестна.
  • Теперь, когда дело доходит до программирования, между ними есть три основных различия: обработка новых строк, хранение чисел и представление EOF (конец файла). Давайте подробно рассмотрим эти различия:

2. Обработка новых строк

Новая строка – это конец строки, конец строки или разрыв строки. Обычно это специальный символ, обозначающий конец строки. Символ новой строки в текстовом файле сначала преобразуется в комбинацию возврата каретки и перевода строки, а затем записывается на диск. Точно так же при чтении текстовым файлом комбинация возврата каретки и перевода строки преобразуется в новую строку. Однако в двоичном файле таких преобразований не происходит.

3. Хранение чисел

В текстовом режиме функция fprintf() используется для хранения числовых данных на диске. Тексты и символы хранятся по одному символу на байт, как и должно быть (char занимает 1 байт в памяти), и, как ожидается, целые числа должны занимать 4 байта (зависит от компилятора) на число. Но это не так. Например, у нас есть число 567392. Согласно соглашению о хранении целых чисел, оно должно занимать на диске 4 байта, но это не так. Он занимает 6 байт, т. е. по 1 байту на каждую цифру в числе. Также число 56.9057 будет занимать на диске 7 байт. Таким образом, мы видим, что каждая цифра в файле сама по себе воспринимается как символ и занимает больше места, чем необходимо. Таким образом, если у нас много числовых данных, то использование текстового файла не будет очень эффективным с точки зрения использования памяти (но все же используемый синтаксис зависит от нашего использования, т.е. если у нас есть варианты использования, в которых человек должен прочитать файл, мы никогда не сможем выбрать бинарный тип).

Эту проблему можно решить, используя двоичные файлы. Мы должны открыть файл в двоичном режиме (используя «wb» или «rb» для режима записи и чтения соответственно). С помощью функции fread() или fwrite() мы можем легко сохранить данные в двоичной форме, которая будет использовать только 4 байта для хранения целочисленных данных.

4. Представление EOF

Еще один способ различить текстовый режим и двоичный режим — это представление конца файла (EOF). В текстовом режиме в конец файла вставляется специальный символ с кодом ASCII 26. При обнаружении этого символа программе возвращается сигнал EOF.

В двоичном режиме это не так. В двоичном режиме у нас нет специального символа для обозначения EOF. Он отслеживает с помощью количества символов, присутствующих в записи каталога файла.

Полезные ссылки

Пожалуйста, следуйте руководствам по программированию на C или меню на боковой панели, чтобы просмотреть всю серию руководств.

Кроме того, примеры программ на C см. в разделе Примеры программирования на C.

Все примеры размещены на Github.

Рекомендуемые книги

Инвестиции в знания всегда приносят наибольшую прибыль. Надеюсь, вам понравился урок. Приходите еще, потому что обучение прокладывает путь к лучшему пониманию

Не забудьте поделиться и подписаться.

Удачного кодирования!! 😊

Рекомендуется –

Текстовые файлы против двоичных файлов на языке программирования C последнее изменение: 10 февраля 2021 г., автор Nishirika

Здесь вы узнаете о разнице между текстовым файлом и двоичным файлом.

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

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

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

  • Обычные текстовые файлы. Эти файлы содержат маркер конца строки (EOL) в конце каждой строки, обозначающий разрыв строки, и конец файла (EOF) в конце файла, обозначающий конец файла.
  • Файлы с форматированным текстом. Эти файлы также имеют ту же схему, что и обычные текстовые файлы, но могут также хранить связанную с текстом информацию, такую ​​как цвет текста, стиль текста, стиль шрифта и т. д.

Из-за простого и стандартного формата для хранения данных текстовые файлы являются одним из наиболее часто используемых форматов файлов для хранения текстовых данных и поддерживаются во многих приложениях.

Двоичный файл

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

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

Наиболее распространенным примером двоичного файла является файл изображения .PNG или .JPG. Если кто-то попытается открыть эти файлы с помощью текстового редактора, он / она может получить неузнаваемые символы, но при открытии с помощью поддерживающего средства просмотра изображений файл будет отображаться как одно изображение. Это связано с тем, что файл имеет двоичный формат и содержит данные в виде последовательности байтов. Когда текстовый редактор пытается прочитать эти байты и преобразовать биты в символы, он получает нежелательные специальные символы и отображает их пользователю.

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

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

Текстовый файл и двоичный файл — разница между текстовым файлом и двоичным файлом

Комментарий ниже, если у вас есть вопросы, связанные с различием между текстовым файлом и двоичным файлом.

Читайте также:

Просмотр изображений Текстовый редактор
Flower - Image Viewer
Flower - текстовый редактор