Как я могу определить, является ли файл двоичным файлом или текстовым файлом, не открывая его?
2 ответа
Невозможно проверить, какое содержимое имеет файл, без какой-либо программы, открывающей его и фактически читающей содержимое.
Если вы спрашиваете, как определить, является ли файл двоичным или текстовым, не открывая его в текстовом редакторе, это, безусловно, возможно, по крайней мере для большинства файлов. Linux включает file
программу именно для этой цели; в командной строке запустите
file name_of_file
(где, конечно, вы заменяете name_of_file
реальным именем файла, который вы тестируете). file
программа распечатает обоснованное предположение о типе файла, основываясь на его содержимом, и обычно оно довольно хорошо угадывается.
Конечно, всегда будут некоторые угловые случаи, когда даже file
не может сказать. Например, если файл представляет собой текст в кодировке UTF-8, который включает в себя множество символов Unicode с большими номерами, он, вероятно, будет выглядеть как двоичный файл, и вы получите бред, если откроете его в текстовом редакторе, который не Юникод. Хотя даже в этом случае, я думаю, file
может быть в состоянии правильно идентифицировать его ... суть в том, что иногда трудно / невозможно сказать вообще, поэтому вы никогда не можете быть на 100% уверены, что правильно определили тип содержимого ,
Я думаю, что большой вопрос был бы, почему вы пытаетесь отличить двоичные файлы от текстовых файлов?
Это невозможно. Все, что вы можете сделать, это использовать такие инструменты, как file
чтобы сделать правильный выбор.