Однако я не могу использовать что-либо из зависимость org.json, например getJSONObject.
У меня была ошибка «сломанный путь» для этой зависимости, но я поигрался с ней, и она больше не отображается ошибка, но она все еще не работает
Ошибка: невозможно разрешить метод getJSONObject в JSONObject
Мои зависимости:

Что я пытаюсь разобрать:
Код: Выделить всё
{"version":"3.0","user":"valenciacollege_rivera_christina","dateGenerated":"2024-10-20T09:21:40Z","status":"OK","data":[{"parameter":"t_2m:C","coordinates":[{"lat":52.520551,"lon":13.461804,"dates":[{"date":"2024-10-20T00:00:00Z","value":11.3}]}]}]}
Код: Выделить всё
package org.example;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.*;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Base64;
import java.net.URI;
import java.nio.charset.StandardCharsets;
import org.json.*;
public class Test3 {
public static void main(String[] args) throws Exception {
try {
File file = new File("filename.json");
try {
File myObj = new File("filename.json");
if (myObj.createNewFile()) {
System.out.println("File created: " + myObj.getName());
} else {
System.out.println("File already exists.");
}
} catch (IOException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
// String username = args[0];
// String password = args[1];
// System.out.print("username: " + username + ", password: " + password + "\n");
URI uri = new URI("https://api.meteomatics.com/2024-10-20T00:00:00Z/t_2m:C/52.520551,13.461804/json");
URL url = uri.toURL();
String credentials = "valenciacollege_rivera_christina" + ":" + "VV2hU5du3q";
String encoding = Base64.getEncoder().encodeToString(credentials.getBytes(StandardCharsets.UTF_8));
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/json");
conn.setRequestProperty("Authorization", "Basic " + encoding);
if (conn.getResponseCode() != 200) {
throw new RuntimeException("Failed : HTTP error code : " + conn.getResponseCode());
}
BufferedReader streamReader = new BufferedReader(new InputStreamReader((conn.getInputStream())));
StringBuilder responseStrBuilder = new StringBuilder();
String inputStr;
while ((inputStr = streamReader.readLine()) != null) {
responseStrBuilder.append(inputStr);
}
System.out.print(responseStrBuilder.toString());
//try
FileWriter myWriter = new FileWriter("filename.json");
myWriter.write(String.valueOf(responseStrBuilder));
myWriter.close();
//super try JSON PARSING
Object obj = new JSONParser().parse(new FileReader("filename.json"));
JSONObject jo = (JSONObject) obj;
JSONArray ja = (JSONArray) jo.get("data");
System.out.println("DATA HERE:" + ja);
JSONObject obj2= jo.getJSONObject("data"); //getJSONObject is red
} catch (Exception e) {
e.printStackTrace();
}
}
}
Код: Выделить всё
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
org.example
SoilTemp1
1.0-SNAPSHOT
22
22
UTF-8
com.open-meteo
sdk
1.10.0
com.fasterxml.jackson.core
jackson-annotations
2.12.3
org.json
json
20240303
com.googlecode.json-simple
json-simple
1.1.1
Посмотрел в Интернете, чтобы получить помощь, но ни одно из руководств не помогло, я попробовал перезагрузить компьютер, но безуспешно. Я также попробовал добавить банку в свою библиотеку.
Подробнее здесь: https://stackoverflow.com/questions/791 ... bject-or-j
Мобильная версия