У меня есть файл размером чуть больше 500 МБ, который вызывает некоторые проблемы.
Я полагаю, что проблема в соглашении конца строки (EOL). Я хотел бы посмотреть на файл в его неинтерпретированной необработанной форме (1), чтобы подтвердить соглашение EOL о файле.
Как я могу просмотреть "двоичный" файл, используя что-то встроенное в Windows 7? Я бы предпочел не загружать что-либо дополнительное.
(1) Мой коллега и я открыли файл в текстовых редакторах, и они показывают строки, как и следовало ожидать. Но оба текстовых редактора будут открывать файлы с различными соглашениями EOL и интерпретировать их автоматически. (TextEdit и Emacs 24.2. Для Emacs я создал второй файл только с первыми 4K-байтами, используя head -c4096
на коробке с linux, и открыл его с моего окна.
Я попытался использовать hexl-режим в Emacs, но когда я перешел в hexl-режим и вернулся в текстовый режим, содержимое буфера изменилось, добавив видимый ^ M в конец каждой строки, так что я не доверяя этому на данный момент.
Я полагаю, что проблема может быть в конце строки символов. Редакторы, которые мы с коллегой пытались (1), просто автоматически определили в конце строки и показали нам строки. И на основании других доказательств я считаю, что конвенция EOL - это только возврат каретки. (2) только возврат.
Чтобы узнать, что на самом деле находится в файле, я хотел бы взглянуть на двоичное содержимое файла или, по крайней мере, пару тысяч байт файла, предпочтительно в шестнадцатеричном формате, хотя я мог бы работать с десятичным или восьмеричным. На нули было бы довольно грубо смотреть.
ОБНОВИТЬ
За исключением одного, предлагающего DEBUG
, все ответы ниже работают в той или иной степени. Я проголосовал за каждого из них как за полезного. Мой вопрос был плохо сформирован. При тестировании каждого предложенного решения я обнаружил, что я действительно хотел, чтобы рядом просматривался шестнадцатеричный и текстовый контент, и что я хотел, чтобы это было что-то такое, где когда я наводил курсор на что-либо, либо на байтовое значение, либо на текстовый символ, что-то соответствовало на другая сторона будет выделена.
Я действительно решил свою проблему, когда Emacs hexl-режим начал работать "правильно". Поэтому я не использовал ни один из этих ответов, а только проверял их.(На самом деле следует изучить странное поведение Emacs и отправить отчет об ошибке.)