2
Я работаю на разбор локального JSON
с помощью GSON
Library.Here моей структурыПроблемы в разборе JSON с помощью библиотеки GSON
{
"employees":[
{
"id":100,
"name":"Ranjith"
},
{
"id":101,
"name":"Satheesh"
}]
}
JSON Я должен отобразить это в списке view.Here моего код
public void loadfromfile()
{
try {
AssetManager am = getAssets();
InputStream is = am.open("sample.json");
BufferedReader br=new BufferedReader(new InputStreamReader(is));
Gson gson=new Gson();
JsonReader reader=new JsonReader(br);
reader.beginObject();
while (reader.hasNext()) {
String name = reader.nextName();
if (name.equals("success")) {
success =reader.nextBoolean();
}
else if(name.equals("employees")){
reader.beginArray();
while (reader.hasNext()) {
Employee employee= gson.fromJson(String.valueOf(reader), Employee.class);
emplist.add(employee);
}
reader.endArray();
}
}
reader.endObject();
reader.close();
dataAdapter.notifyDataSetChanged();
}catch (IOException ex){
ex.printStackTrace();
}
, когда я запускаю этот IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1
. Я использую отдельный класс для установки и получения полей в json. Как решить эту проблему.
Но когда я использовать его без преобразования андроид студии уведомит как ошибки и говорит «не может решить fromjson (....)» – Ranjith
от считывателя принимает JsonReader в качестве параметра, оно должно быть что-то другое. Поскольку я только что скопировал ваш код и попробовал, он работает нормально, без преобразования. Вы уверены, что используете правильный метод? выше должны работать должным образом. Только одно: вы используете jsonfrom или jsonFrom? или это было просто упоминание –
Я проверил, что он не работает – Ranjith