-2
オープンソースプロジェクトを持つgithubが見つかりましたが、破損しています。 、私は配列にそれを変更しようとすると、ヌルJSONオブジェクトではありません:null
I:未JSONオブジェクト:それは私がスレッド「メイン」java.lang.IllegalStateExceptionでエラー例外を取得https://api.randomuser.me/?nat=gb
のオフJSONを取得しようとします配列ではないというエラーを取得します。何がありますか?
String json = readUrl(RANDGEN_URL);
JsonParser jsonParser = new JsonParser();
JsonObject firstNameObject = jsonParser.parse(json)
.getAsJsonObject().getAsJsonArray("results").get(0)
.getAsJsonObject().getAsJsonObject("name");
String firstNameString = firstNameObject.get("first").getAsString();
JsonObject lastNameObject = jsonParser.parse(json)
.getAsJsonObject().getAsJsonArray("results").get(0)
.getAsJsonObject().getAsJsonObject("name");
String lastNameString = lastNameObject.get("last").getAsString();
Random randMail = new Random();
int setMail = randMail.nextInt(90) + 10;
String mail = firstNameString + "." + lastNameString + "" + setMail + "@gmail.com";
JsonObject usernames = jsonParser.parse(json)
.getAsJsonObject().getAsJsonArray("results").get(0)
.getAsJsonObject().getAsJsonObject("login");
String user = usernames.get("username").getAsString();
if (user.length() > 12) {
Random randNum = new Random();
int setNum = randNum.nextInt(90) + 10;
user = user.substring(0, Math.min(user.length(), 10)) + setNum;
}
Gson 'のSystem.out.println(jsonParser.parse(値).getAsJsonObject()。( "結果")を取得する。getAsJsonArray()。得る(0).getAsJsonObject()。「(取得name ")。getAsJsonObject()。get(" first ")。getAsString());それは働く。私はいくつかの場合、空の配列を取得するか、要求されたキーが存在しないと思います。 'getAsJsonArray()。size()'& 'getAsJsonObject()。has(" results ")'など。 – user993533