/ / BEGIN_OBJECT की अपेक्षा की गई थी, लेकिन Gson - java, json, gson में STRING थी

अपेक्षित BEGIN_OBJECT लेकिन जीसन में जावा था - जावा, जेसन, जीसन

नमस्ते मैं GSON द्वारा कुछ JSON को पार्स करने की कोशिश कर रहा हूं जो कुंजी के रूप में संख्या का उपयोग करता है। मैं पोस्ट का संदर्भ देता हूं लेकिन यह कुछ त्रुटि देता है और मुझे पता नहीं है कि क्यों।

जावा में फ़ील्ड कुंजी के रूप में नंबर के साथ जोंस ऑब्जेक्ट्स को कैसे कन्वर्ट करें?

मैं भी पोस्ट देख रहा हूं लेकिन फिर भी अपनी समस्या का समाधान नहीं कर पा रहा हूं।

"अपेक्षित BEGIN_OBJECT लेकिन पंक्ति 1 कॉलम 1 पर STRING था"

यहां छवि विवरण दर्ज करें

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;

import java.lang.reflect.Type;
import java.util.HashMap;
import java.util.Map;

public class Main {
public static void main(String[] args) {
Gson gson = new Gson();

Type type = new TypeToken<HashMap<String, HashMap<String, String>>>() {}.getType();
Map<String, Map<String, String>> map = gson.fromJson("./src/main/resources/input.json", type);

}
}

Json फ़ाइल है

{
"1":{"id":"1"}
}

उत्तर:

जवाब के लिए 3 № 1

The fromJson विधि doesn "टी प्राप्त एक फ़ाइल नाम, यह एक वास्तविक JSON प्राप्त करता है: डॉक् टरों को यहां देखिए

लेकिन वहां एक अधिभार कि एक पाठक के बजाय प्राप्त करता है:

try (FileReader reader = new FileReader("./src/main/resources/input.json"))
{
map = gson.fromJson(reader, type)
}
catch (...) { ... }