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
Java 如何在Json文件中读取多个JsonObject_Java_Json - Fatal编程技术网

Java 如何在Json文件中读取多个JsonObject

Java 如何在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

您好,我正在使用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","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);