我正在從PHP發送JSON字符串到Java,它由一些字符串類型數據和編碼圖像組成。在jJva中,inputStream被轉換爲BufferedReader並轉換爲String。現在字符串看起來像{"name": "xxx", "image":agrewfefe...}
是否有任何可能的方式來解碼錶示圖像到位圖的字符串或我必須在其他流發送圖像?從JAVA中的JSON字符串獲取圖像
-5
A
回答
1
是;你需要Base64 encode你的形象。
因爲它不能保證您生成的字符是可打印的,或者它們不會破壞JSON格式。
有許多Base64編碼/解碼庫。常用的一種是包含在Apache commons (codec) library
下面是http://www.kodejava.org/examples/375.html
import org.apache.commons.codec.binary.Base64;
import java.util.Arrays;
public class Base64Encode {
public static void main(String[] args) {
String hello = "Hello World";
//
// The encodeBase64 method take a byte[] as the paramater. The byte[]
// can be from a simple string like in this example or it can be from
// an image file data.
//
byte[] encoded = Base64.encodeBase64(hello.getBytes());
//
// Print the encoded byte array
//
System.out.println(Arrays.toString(encoded));
//
// Print the encoded string
//
String encodedString = new String(encoded);
System.out.println(hello + " = " + encodedString);
}
}
在發送側,你會使用編碼字符串爲您JSON「圖像」字段一個簡單的使用例子。另一方面,您將解析JSON,然後將Base64字符串解碼回圖像。
編輯補充:剛剛重新閱讀您的問題(我只記下的標籤最初,錯過了PHP的一部分) - 在PHP端你需要使用base64_encode
1
如前所述,Base64編碼是最好的選擇。但是,不要手動做到這一點,只需使用Jackson JSON library,它自動Base64編碼/解碼二進制數據(任何聲明爲byte[]
)。因此,像
public class Request {
public String name;
public byte[] image;
}
Request req = new ObjectMapper().readValue(new URL("http://my.service.com/getImage?id=123"),
Request.class);
+0
良好的通話。我其實並不知道傑克遜有這個功能,每天學些新東西。 –
相關問題
- 1. 從base64中獲取圖像字符串
- 2. 從Java中的mimepart獲取圖像的base64內容字符串
- 3. 從字符串從Google獲取圖像
- 4. 從Json獲取字符串?
- 5. 獲取從JSON字符串
- 6. 從Json獲取字符串
- 7. 從圖像src獲取base64字符串
- 8. 從hexa字符串獲取圖像
- 9. iOS:從HTML字符串獲取圖像
- 10. 獲取圖像標籤從字符串
- 11. GSON - 從字符串中獲取JSON值
- 12. PHP:從base64字符串獲取圖像類型字符串
- 13. 從Java中的JSON數組對象獲取字符串值
- 14. android java從字符串獲取html圖像標記
- 15. 從Java中獲取xml字符串
- 16. 從Java輸入中獲取字符串
- 17. 如何從JSON字符串中獲取Java對象
- 18. 從這些字符串的圖像中提取字符串?
- 19. 從JSON字符串/數組中提取第一個圖像
- 20. 如何從json字符串獲取值?
- 21. 從JSON字符串獲取數據
- 22. 從web服務獲取json字符串
- 23. 如何從URL獲取JSON字符串?
- 24. 從字符串獲取Json值
- 25. 從JSON字符串獲取內容
- 26. 從JSon請求獲取字符串
- 27. 從Android獲取JSON字符串JSONException
- 28. Gson - 從JSON字符串獲取值
- 29. 如何從url獲取json字符串?
- 30. 從json(Vba)獲取字符串
你不能安全地假設,如果你翻譯的圖像文本將不包含在JSON視爲無效(或打破JSON語法,喜歡「或」或字符:或,) – 11684
你的(sorta)snippit對於一個人來說是無效的JSON(字符串必須被引用)除此之外,@ 11684在上面說過;你需要做一些事情,比如Base64編碼你的圖像以避免破壞JSON。 –
你可以_decode_ Base64?@BrianRoach – 11684