Как извлечь данные ASCII из двоичного файла с неизвестным форматом в Windows? - PullRequest
5 голосов
/ 10 февраля 2010

В Windows, как лучше всего преобразовать двоичный файл, внутренняя структура которого неизвестна, за исключением того, что его содержимое является ASCII по природе обратно в обычный текст?

В идеале преобразование должно было бы создать "читаемую человеком" версию. Я думаю, что файл должен содержать что-то вроде следующего:

Date: 10 FEB 2010
House: 345 Dogwood Drive
Exterior: Brick

Ответы [ 2 ]

20 голосов
/ 10 февраля 2010

В Linux / Unix:

$ strings < unknown.dat > ascii-from-unknown.txt

Это, конечно, не столько "преобразование", сколько прямое извлечение, просто отфильтровывая байты не-ASCII. Впрочем, это полезно довольно часто.

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

1 голос
/ 10 февраля 2010

В зависимости от того, чего именно вы хотите достичь, шестнадцатеричный дамп может соответствовать всем требованиям: это чистый ASCII-формат, который представляет весь файл без потери данных (но при этом достаточно расточительный с пространством).

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

Существует несколько простых инструментов , которые создают шестнадцатеричный дамп в Windows.

...