gpt4 book ai didi

java - 解析JSON文件(JAVA)

转载 作者:行者123 更新时间:2023-11-30 05:49:29 25 4
gpt4 key购买 nike

我想创建一个包含 JSONFile 中所有信息的 JSONObject。

我在互联网上查找,只找到了如何在该对象中添加一个人。我想知道是否有任何方法可以将所有人员及其属性添加到一个 JSONObject 中。

public class JsonSingleton extends AbstractSingleton {

final String personnesJsonPathFile = "personnesJson.json";

private JsonSingleton() {
}

public Personne createPersonneWithFileObject( JSONObject jsonObjectPerson ) {

int idPersonne = Integer.parseInt( ( String ) jsonObjectPerson.get( "id" ) );
String prenom = ( String ) jsonObjectPerson.get( "prenom" );
String nom = ( String ) jsonObjectPerson.get("nom");
Double poids = Double.parseDouble( ( String ) jsonObjectPerson.get( "poids" ) );
Double taille = Double.parseDouble( ( String ) jsonObjectPerson.get( "taille" ) );
String rue = ( String ) jsonObjectPerson.get( "rue" );
String ville = ( String ) jsonObjectPerson.get( "ville" );
String codePostal = ( String ) jsonObjectPerson.get( "codePostal" );
return new Personne( idPersonne, prenom, nom, poids, taille, rue, ville, codePostal );
}

@Override
protected void extractPersonnesDatas() {

JSONParser parser = new JSONParser();
try {
Object obj = parser.parse( new FileReader ( personnesJsonPathFile ) );

} catch (IOException | ParseException e) {
e.printStackTrace();
}

}
}

这是 Json 数据:

{"personnes":[{"id":1,"prenom":"Martin","nom":"Marshall","poids":60,"taille":150,"rue":"rue de Nantes","ville":"Laval","codePostal":"53000"},
{"id":2,"prenom":"Claire","nom":"Chazal","poids":65,"taille":155,"rue":"rue de Rennes","ville":"Laval","codePostal":"53000"},
{"id":3,"prenom":"Jacques","nom":"Dupont","poids":90,"taille":180,"rue":"rue des Anges","ville":"Paris","codePostal":"75000"},
{"id":4,"prenom":"Celine","nom":"Dia","poids":66,"taille":166,"rue":"rue Diderot","ville":"Paris","codePostal":"75000"},
{"id":5,"prenom":"Remy","nom":"Cheval","poids":88,"taille":200,"rue":"rue du paradis","ville":"Nantes","codePostal":"44000"},
{"id":6,"prenom":"Nicolas","nom":"Dutrou","poids":40,"taille":150,"rue":"rue Appert","ville":"Nantes","codePostal":"44000"},
{"id":7,"prenom":"Marie","nom":"Claire","poids":92,"taille":188,"rue":"rue du paradis","ville":"Rouen","codePostal":"76000"},
{"id":8,"prenom":"Nathalie","nom":"Sage","poids":75,"taille":175,"rue":"rue Appert","ville":"Rouen","codePostal":"76000"},
{"id":9,"prenom":"Jean","nom":"Dujardin","poids":56,"taille":166,"rue":"rue des sorciers","ville":"Havre","codePostal":"76800"},
{"id":10,"prenom":"Michel","nom":"Leclerc","poids":100,"taille":202,"rue":"rue du bonneur","ville":"Havre","codePostal":"76800"},
{"id":11,"prenom":"Julien","nom":"Marshall","poids":65,"taille":144,"rue":"rue de Nantes","ville":"Laval","codePostal":"53000"},
{"id":12,"prenom":"Julien","nom":"Claire","poids":85,"taille":169,"rue":"rue du Paradis","ville":"Paris","codePostal":"75000"},
{"id":13,"prenom":"Jacques","nom":"Dupont","poids":87,"taille":172,"rue":"rue des Passeurs","ville":"Paris","codePostal":"75000"},
{"id":14,"prenom":"Charles","nom":"Hallyday","poids":69,"taille":133,"rue":"rue des Feugrais","ville":"Rouen","codePostal":"76000"},
{"id":15,"prenom":"Serge","nom":"Lama","poids":78,"taille":174,"rue":"rue des Heureux","ville":"Nantes","codePostal":"44000"},
{"id":16,"prenom":"Vincent","nom":"Thomas","poids":35,"taille":169,"rue":"rue de Paris","ville":"Rennes","codePostal":"35000"},
{"id":17,"prenom":"Eric","nom":"Dummat","poids":56,"taille":155,"rue":"rue de Versaille","ville":"Paris","codePostal":"75000"},
{"id":18,"prenom":"Nicolas","nom":"Samuel","poids":49,"taille":171,"rue":"rue de Saint Louis","ville":"Laval","codePostal":"53000"},
{"id":19,"prenom":"Rémy","nom":"Guerry","poids":54,"taille":157,"rue":"rue des Sages","ville":"Lyon","codePostal":"69000"},
{"id":20,"prenom":"Nicolas","nom":"Drapeau","poids":63,"taille":145,"rue":"rue Mitterrand","ville":"Limoges","codePostal":"87000"}
]}

最佳答案

您可以使用 JSONArray 而不是 JSONObject 并在该对象内使用 for 循环进行迭代:

JSONArray array = obj.getJSONArray("value");

for (int i = 0; i < array.length(); i++) {
System.out.println(arr.getJSONObject(i).getString("prenom"));
}

在这里您可以找到有关 JSONArray 的更多详细信息

关于java - 解析JSON文件(JAVA),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54201407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com