有沒有一種在Android中將任何對象轉換爲JSON的簡單方法?在Android中將對象轉換爲JSON
回答
大多數人都使用GSON:https://github.com/google/gson
Gson gson = new Gson();
String json = gson.toJson(myObj);
就Android 3.0(API等級11)的Android有一個較新的和改進的JSON解析器。
http://developer.android.com/reference/android/util/JsonReader.html
讀取編碼值作爲標記的流的JSON(RFC 4627)。這個 流包括文字值(字符串,數字,布爾值和空值)以及對象和數組的開始和結束分隔符。 這些令牌按深度優先順序遍歷,它們與 出現在JSON文檔中的順序相同。在JSON對象中,名稱/值 對由單個標記表示。
public class Producto {
int idProducto;
String nombre;
Double precio;
public Producto(int idProducto, String nombre, Double precio) {
this.idProducto = idProducto;
this.nombre = nombre;
this.precio = precio;
}
public int getIdProducto() {
return idProducto;
}
public void setIdProducto(int idProducto) {
this.idProducto = idProducto;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public Double getPrecio() {
return precio;
}
public void setPrecio(Double precio) {
this.precio = precio;
}
public String toJSON(){
JSONObject jsonObject= new JSONObject();
try {
jsonObject.put("id", getIdProducto());
jsonObject.put("nombre", getNombre());
jsonObject.put("precio", getPrecio());
return jsonObject.toString();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "";
}
}
我更喜歡這種方式,每個對象都有自己的stringify方法,謝謝你的洞察! – Bhimbim 2017-12-18 04:33:59
Spring for Android很容易地做到這一點使用RestTemplate:
final String url = "http://192.168.1.50:9000/greeting";
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
Greeting greeting = restTemplate.getForObject(url, Greeting.class);
您不需要將MappingJackson2HttpMessageConverter添加到RestTemplate,如果Jackson Jar在類路徑中,它會自動添加。 – 2016-10-11 14:14:43
這如何可以一個JSON字符串JSON對象轉換本身,而無需使用任何外部庫,並得到相應的值的關鍵。希望下面的工作。
String JSONstring = "{/"key1/":/"I am Value for Key1/"}";
//Import these libraries
import org.json.JSONException;
import org.json.JSONObject;
//Code below
try
{
String myVariable = jsonObject.optString("key1", "Fallback Value if key1 is not present");
System.out.println("Testing: "+ myVariable);
}
catch (JSONException e) {e.printStackTrace();}
這不是一個問題的答案。此外jsonObject在這裏是未知的。 – CoolMind 2016-04-08 13:02:18
可能是更好的選擇:
@Override
public String toString() {
return new GsonBuilder().create().toJson(this, Producto.class);
}
- 1. 將JSON轉換爲模型對象Android
- 2. 將對象轉換爲json?
- 3. 將對象轉換爲json
- 4. 在android中使用gson將json數組轉換爲json對象?
- 5. 在PHP中將對象轉換爲JSON和JSON到對象
- 6. 將JSON對象轉換爲C#對象
- 7. 將jcas對象轉換爲json對象
- 8. 將javascript對象轉換爲json對象
- 9. 無法將JSON從WebApi轉換爲Android中的Json對象
- 10. JSON - 將對象轉換爲JSON數組
- 11. 將JSON對象轉換爲JSON數組
- 12. 將JSON對象轉換爲JSON陣列
- 13. 將JSON轉換爲Swift中的對象
- 14. 將json轉換爲C中的對象#
- 15. 無法轉換爲JSON對象android
- 16. 我想將此字符串轉換爲android中的json對象?
- 17. 如何將json對象轉換爲android ..中的字符串?
- 18. 在Android上將對象數組轉換爲JSON字符串
- 19. 將ExecutionResult對象轉換爲json
- 20. 將PDO對象轉換爲Javascript JSON
- 21. 如何將json對象轉換爲java
- 22. Codeigniter/PHP /將對象轉換爲JSON
- 23. 將字符串轉換爲JSON對象
- 24. 將JSON對象轉換爲Typescript類
- 25. 將對象轉換爲json格式 - iOS
- 26. Json_encode - 將數組轉換爲json對象
- 27. 將JSON自動轉換爲Java對象
- 28. 將Json轉換爲java對象
- 29. 如何將json轉換爲對象?
- 30. 將表數組轉換爲JSON對象
並且還傑克遜。 – Mob 2011-12-08 13:48:48
爲什麼我們沒有toJson的嵌入方法?但是我們從傑森來? – 2017-11-22 10:31:22