Бинарные термины Путаница - PullRequest
1 голос
/ 27 марта 2011

Чем следующие термины отличаются в контексте файла?

Двоичная форма и двоичный файл.

Ответы [ 3 ]

2 голосов
/ 27 марта 2011

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

Если вы откроете файл в Блокноте и увидите содержимое:

Все хорошо

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

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

В заключение, что бы ни означали "двоичная форма" и "двоичный файл", вероятно, зависит от контекста, но вот моя интерпретация:

  • Двоичная форма : нечитаемая форма, т.е. не обычный текст, понятный, только если вы прочитаете его через компьютерную программу и отобразите его
  • Двоичный файл : Файл, содержащий данные в двоичном виде. Все файлы в основном двоичные, состоящие из 1 и 0.

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

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

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

1 голос
/ 27 марта 2011

Все файлы являются двоичными, но я мог бы (для определенной цели) думать о данных в двоичной форме или в форме символов, которые они (если они содержали текст) представляли. Следовательно, один и тот же файл может содержать «Hello World» или {0x48,0x65,0x6C, 0x6C, 0x6F, 0x20,0x57,0x6F, 0x72,0x6C, 0x64} в зависимости от того, что мы с ним делаем.

Файл, предназначенный для использования исключительно последним способом (например, исполняемый файл или большинство форматов изображений), обычно называется двоичным файлом.

Различные соглашения с текстовыми файлами могут быть разумно преобразованы между системами, например, перевод может переводиться между новыми строками, представленными {0x0A}, {0x0D}, {0x0D, 0x0A} или {0x1E} (и несколькими другими форматов, но они имеют большую несовместимость другими способами), чтобы файлы работали корректно в любой системе, в которую они были перемещены, однако, если это сделать с файлом изображения или исполняемым файлом, это испортит его, поэтому мы говорим о передаче файлов в виде текста (выполните перевод между окончаниями строки) или в двоичном виде (ничего не меняйте).

0 голосов
/ 27 марта 2011

Можно сказать «двоичная форма» для обозначения некоторого нетекстового представления данных. Это очень расплывчатый термин. Аналогично, «двоичный файл» - это просто файл, который не содержит текста.

Представьте, что вы хотите сохранить число «123» в файле. Есть несколько способов сделать это, но в целом их всего два: текстовый или двоичный. В текстовом виде число «123» будет представлено в виде кода для цифры «1», кода для цифры «2» и кода для цифры «3». Нет ничего особенного между этим и файлом, содержащим строку «abc»: три кода для трех символов.

Но в двоичном файле число «123», вероятно, будет храниться в виде единого «кода» - представления самого числа в base-2. Не символы, которые мы используем для отображения числа, а действительное значение числа, если вы понимаете, о чем я.

...