Расшифровка устаревшего двоичного формата - PullRequest
2 голосов
/ 03 января 2011

Я пытаюсь выяснить, как декодировать «устаревший» двоичный файл, который поступает из приложения Windows (год назад - 1990).В частности, у меня возникли проблемы с пониманием того, какая конкретная кодировка используется для хранимых строк.

Пример. Строка Unicode "Düsseldorf" представляется как "Du \ 06sseldorf" или hex "44 75 06 73 7365 6C 64 6F 72 66 ", где все однобайтовые, кроме" u + \ 06 ", которые загадочным образом становятся u-umlaut.

Является ли это полностью проприетарным?Есть идеи?

1 Ответ

6 голосов
/ 03 января 2011

Поскольку это приложение предшествует DBCS и Unicode, я подозреваю, что оно является частным.Похоже, что они могут использовать не-ASCII значения ниже 31 для представления различных знаков акцента.

\06 может указывать на то, что «поставить умлаут на предыдущий символ».

Попробуйте заменитьстрока с "Du\05sseldorf" и посмотрите, меняется ли акцент на вас.Затем попробуйте другие экранированные значения от 1 до 31, и я подозреваю, что вы можете найти карту для этих экранирующих символов.Конечно, когда у вас есть карта, вы можете легко создать подпрограмму, которая заменит все строки правильными современными строками Юникода с акцентами на месте.

...