Ну вот, я пытаюсь собрать изображение, которое закодировано как шестнадцатеричная строка в XML-файле. Я искал ответы на все это и не смог найти нигде. Вот что у меня есть сейчас.Получение изображения JPEG из шестнадцатеричной строки в XML
byte[] bytes = Convert.FromBase64String(FilterResults("PHOTOGRAPH"));
MemoryStream mem = new MemoryStream(bytes);
Image bmp2 = Image.FromStream(mem);
return bmp2;
Функция FilterResults просто возвращает строку из XML. Я могу получить строку символов и преобразовать ее в байт [], но как только я выполню Image.FromStream (mem), я получаю ошибку «Параметр неправильной».
Любые идеи?
Предполагая, что FilterResults возвращает строку правильно (что, вероятно, делает, потому что FromBase64String бы исключение, если оно недействительно base64), я не вижу ничего плохого в вашем коде. Вы уверены, что данные на самом деле являются изображениями в формате JPEG? Не могли бы вы загрузить файл XML где-нибудь? –
Он просто не кодируется как изображение с включенным заголовком изображения. Опубликуйте первые 8 байтовых значений, которые вы видите. –
Это 8 лучших байтов из документа/блока данных ffd8ffe0 –