Java 如何在Json文件中读取多个JsonObject
您好,我正在使用Gson库,我有一个名为Estudiante.class的类,还有一个Json文件 看起来像这样。Im使用Eclipse(Java)MacOSXJava 如何在Json文件中读取多个JsonObject,java,json,Java,Json,您好,我正在使用Gson库,我有一个名为Estudiante.class的类,还有一个Json文件 看起来像这样。Im使用Eclipse(Java)MacOSX {"nombre":"Alex","apellido":"S","cedula":"1234","mes":2,"ano":2,"dia":2,"zona":"LSM","telefono":"0000","semestre":5,"promedio":5.0} {"nombre":"Alfred","apellido":"S","ce
{"nombre":"Alex","apellido":"S","cedula":"1234","mes":2,"ano":2,"dia":2,"zona":"LSM","telefono":"0000","semestre":5,"promedio":5.0}
{"nombre":"Alfred","apellido":"S","cedula":"523412","mes":6,"ano":6,"dia":6,"zona":"LSM","telefono":"0001","semestre":6,"promedio":6.0}
现在我想读一下,把它放到一个有位置1 Alex和位置2 Alfred的Estudiante数组中(如果我有更多的对象,依此类推)
任何人都可以在这个实现上帮助我吗。我读过成千上万的主题,但我不知道我做错了什么。谢谢
Estudiante estudiantes[]=新Estudiante[20]
公共空间{
}
这就是我的进步我在大学时做过一次这样的练习,我用ArrayList做练习,你可以试试这样的(我和口袋妖怪一起工作,因为当时我用这种方式做练习,至少对我来说更具教育意义):
List plist=new ArrayList();
口袋妖怪p1=新的口袋妖怪();
p1.设置编号(1);
p1.设定名称(“Bulbasaur”);
p1.刚毛类型(“草”);
口袋妖怪p2=新的口袋妖怪();
p2.设置编号(25);
p2.设定名称(“皮卡丘”);
p2.设定类型(“电动”);
plist.add(p1);
plist.add(p2);
Gson-agson=新的Gson();
类型myListType=newTypeToken(){}.getType();
字符串myJsonString=agson.toJsonTree(plist,myListType);
如果你想阅读,你可以用同样的方法:
Type myListType = new TypeToken<List<PokemonBean>>(){}.getType();
List<Pokemon> myListAgain = agson.fromJson(json, myListType);
Type myListType=new-TypeToken(){}.getType();
列出myListGain=agson.fromJson(json,myListType);
如果对你有效,请告诉我
问候和愉快的编码:)。分享您迄今为止的尝试。您拥有的是背对背的独立JSON字符串。我不认为你可以使用NSJSONSerialization来阅读它,除非你进行预处理并分成单独的行;我不确定格森。但无论如何,这是一种非常蹩脚的JSON存储方式……您是在某处生成JSON输出,还是从另一个源以这种格式提供?理想情况下,在写入文件时,它将被序列化为一个数组,而不是单独的JSON字符串。我不知道如何用另一种方法来实现。我昨天刚开始使用Json,似乎不知道如何读取Json文件上的多个对象,并将其放入我的普通JavaArray中,即Estudiante estudiantes[]
List<PokemonBean> plist = new ArrayList<PokemonBean>();
PokemonBean p1 = new PokemonBean();
p1.setNumber(1);
p1.setName("Bulbasaur");
p1.setType("Grass");
PokemonBean p2 = new PokemonBean();
p2.setNumber(25);
p2.setName("Pikachu");
p2.setType("Electric");
plist.add(p1);
plist.add(p2);
Gson agson = new Gson();
Type myListType = new TypeToken<List<PokemonBean>>(){}.getType();
String myJsonString = agson.toJsonTree(plist, myListType);
Type myListType = new TypeToken<List<PokemonBean>>(){}.getType();
List<Pokemon> myListAgain = agson.fromJson(json, myListType);