[英]gson de-serialization to string in java
在我的項目中,我正在使用gson。 當我想將我的類的json子對象反序列化為String時遇到問題
Class X
{
Object1 x1 // expected json -> '{"param1": "pvalue", "param2":"pvalue"}'
Object2 x2 //expected json -> '{"param1": "pvalue", "param2":"pvalue"}'
String x3 //expected json ->'{"param1": "pvalue", "param2":"pvalue"}'
}
Gson無法反序列化x3,因為它的內容是json對象,但我需要它作為字符串而不是Java對象。 類X {Object1 x1 //期望的json->'{“ param1”:“ pvalue”,“ param2”:“ pvalue”}'Object2 x2 //期望的json->'{“ param1”:“ pvalue”,“ param2 “:” pvalue“}'字符串x3 //期望的json->'{” param1“:” pvalue“,” param2“:” pvalue“}'}}如何將x3的內容保存在字符串中而不是賓語。
謝謝
以下代碼可以正常工作。 不確定是否要嘗試解析的是Json結構。
public class Test
{
public static void main( String[] args )
{
Gson gson = new Gson();
Response response = gson.fromJson( THE_JSON, Response.class );
System.out.println( response.object1 );
System.out.println( response.object1 );
System.out.println( response.stringx );
}
class Response
{
@SerializedName("Objectx1")
Objectx object1;
@SerializedName("Objectx2")
Objectx object2;
@SerializedName("Stringx")
String stringx;
class Objectx
{
@SerializedName("param1")
String param1;
@SerializedName("param2")
String param2;
}
}
}
而THE_JSON是:
{
"Objectx1": {
"param1": "value1",
"param2": "value2"
},
"Objectx2": {
"param1": "value3",
"param2": "value4"
},
"Stringx": '{
"param3": "value3",
"param4": "value4"
}'
}
請注意在Stringx值周圍的單仲裁。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.