Загрузка изображения UTF-16 в память

Я пытаюсь загрузить тег изображения ID3, который был сохранен в формате UTF-16 JFIF. Библиотека, которую я использую (Juce), не может проанализировать изображение, так как предполагает, что данные находятся в необработанном двоичном формате.

Большинство проанализированных тэгов изображений успешно сообщают о кодировке как ISO-8859 (latin-1), но, поскольку latin-1 является подмножеством UTF-16, преобразование не будет работать.

Как я могу получить этот кодированный двоичный блок UTF16 в необработанном формате, который я хочу? И кто-нибудь может просветить меня о преимуществах хранения изображения в формате UTF16 ?!

0

Решение

latin1 не является подмножеством UTF-16!

Я думаю, что вы неправильно поняли кодировку текста и двоичную кодировку. UTF-16 используется для кодирования символов, базовый блок представляет собой 16-разрядное целое число (UTF-8 использует 8-разрядное целое число).

Изображение JPEG (JFIF) имеет двоичное кодирование, и его данные никогда не должны преобразовываться с помощью алгоритма кодирования символов.

Если вы действительно сделали это, вам не повезло, поскольку использование алгоритма преобразования символов в двоичном потоке зависит от того, какой «исходный» текстовый набор символов использовался в то время.

Вероятно, вы можете попытаться преобразовать эти (UTF-16) двоичные данные обратно в двоичные угадывание исходный набор символов, используя iconv.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]