2016-06-20 4 views
-1

Только что столкнулся с проблемой, когда у меня есть веб-служба, которая возвращает фотографию, сохраненную в виде строки base64 в базе данных. Теперь проблема в том, что служба возвращается. System.Byte []. Я ударяю этот веб-сервис из приложения для Android. и я не могу получить оригинальную String.So любезно, кто-то поможет мне разобраться в этом выпуске. И, пожалуйста, направляйте меня, где требуется изменение в webService или в моем приложении Android. Спасибо.Исходные данные: System.Byte []?

+0

На самом деле не совсем ясно, что возвращает что-либо или какая часть * вашего * кода, я боюсь. Вы говорите, что ваш запрос веб-службы включает в себя тест «System.Byte []»? Если это так, вам нужно исправить веб-службу, чтобы этого не сделать. (Почему вы храните фотографию как base64 в своей базе данных, а не просто blob, btw?) –

+0

@JonSkeet База данных уже таким образом и не может быть изменена мной. На уровне запросов я получаю данные правильно, но когда я помещая его в datatable, его преобразование в System.Byte []. любые предложения по этому поводу. –

+0

Похоже, что есть проблема в некотором коде, который вы нам не показали ... –

ответ

0

Я не знаю, спрашиваете ли вы на C# или Android, но это решение Android.

String encodedImage; // Your Base64 String 
byte[] decodedString = Base64.decode(encodedImage, Base64.DEFAULT); 
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); 
+0

Проблема в том, что я не получаю исходную строку базы 64 из веб-службы. Я получаю System.Byte [] в строковой форме. –

+0

Вы пробовали поместить это в 'BitmapFactory.decodeByteArray'? – Joshua

Смежные вопросы