Мне дали файл, который, кажется, закодирован в UTF-8, но каждый байт, который должен начинаться с 1, начинается с 0.
например. там, где можно было бы ожидать польскую букву «ę», закодированную в UTF-8 как \o304\o231
, есть \o104\o031
. Или, в двоичном, вместо 11000100:10011001
.
есть
01000100:00011001
.
Я предполагаю, что это не было сделано намеренно злым создателем файла, который испытывает мою головную боль, а скорее является результатом некоторых ошибочных операций, выполненных с правильным файлом UTF-8.
Вопрос в том, какие «разумные» операции могут быть причиной? Я понятия не имею, как был создан файл, возможно, он был экспортирован каким-то неизвестным программным обеспечением, который мог быть сжат, загружен, скопирован и вставлен, преобразован в другую кодировку и т. Д.
Я буду благодарен за любую идею:)