Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何最容易地基于字符串填充对象?_Java_Json_Parsing_Gson - Fatal编程技术网

Java 如何最容易地基于字符串填充对象?

Java 如何最容易地基于字符串填充对象?,java,json,parsing,gson,Java,Json,Parsing,Gson,我有这个字符串: String s = "VClass2 [id=null, provider=null, venueId=VenueID [t10=555, t1=333, id=12033], categories=[FOOD_AND_DRINK], name=מסעדת גוז׳ ודניאל , englishName=null, description=null]"; 这个目标是: public class VClass2 implements Cloneable, Serializ

我有这个字符串:

String s = "VClass2 [id=null, provider=null, venueId=VenueID [t10=555, t1=333, id=12033], categories=[FOOD_AND_DRINK], name=מסעדת גוז׳ ודניאל , englishName=null, description=null]";
这个目标是:

public class VClass2 implements Cloneable, Serializable, Externalizable {

    public String id;
    public String provider;
    @Transient
    public VenueID venueId;
    @Column(name="category")
    @Serialize(StringToArray.class)
    public String[] categories;
    public String name;
    public String englishName;
    public String description;
    @Transient
    public UserInfo lastUpdatedByInfo;
我发现它们在结构上不完全匹配

如何最容易地解析字符串并填充此类的实例

我可以操纵输入字符串,但是为了使Gson解析顺利进行,它应该是什么样子呢

public class MyTest {


    Gson gson = new Gson();
    String s = "VClass2 [id=null, provider=null, venueId=VenueID [t10=555, t1=333, id=12033], categories=[FOOD_AND_DRINK], name=מסעדת גוז׳ ודניאל , englishName=null, description=null]";

    @Before
    public void setUp() throws Exception {
    }


    @Test
    public void foo()
    {
        Venue2 venue = gson.fromJson(s, VClass2.class);
    }
}
Gson希望在中有一个输入。这意味着:

  • 所有的名字都必须被引用
  • 必须引用所有字符串值
  • 您必须使用
    而不是
    =
  • 对象必须包装在
    {}
  • 必须省略类型名
例如:

{"id":null, "provider":null, "venueId":{"t10":555, "t1":333, ...