0
我尝试转换通过反射生成的类对象并将它们转换为JSON字符串。以下是我的方法JSON - 将对象转换为JSON数组
public Object creatObjectAsString(String className) {
Object objects = null;
try {
objects = java.lang.reflect.Array.newInstance(Class.forName(className), 1);
//System.out.println(objects.toString());
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return objects ;
}
public String convertPlainObjectToJSON(Object obj,boolean isArray){
String jsonString="",tempJSON="";
JSONSerializer serializer = new JSONSerializer();
tempJSON = serializer.serialize(obj);
if(isArray){
jsonString="["+tempJSON+"]";
}else{
jsonString=tempJSON;
}
return jsonString;
}
我已经硬编码以下行,因为我不知道如何创建JSON阵列中,不编程的正确途径。
if(isArray){
jsonString="["+tempJSON+"]";
}else{
jsonString=tempJSON;
}
当我印刷方法I得到以下[[null]]
未预期的结果convertPlainObjectToJSON
。
我犯的错误是什么。
请纠正我。
为什么不尝试使用[Gson](http://code.google.com/p/google-gson/)? – SudoRahul 2013-04-29 07:15:07
我也看到,但我的情况是不同的,我使用反射创建对象,并将对象转换为JSON或JSON数组。 – 2013-04-29 07:16:10
如果你注意到你的输出,你可以看到'[[''双方括号,这意味着'JSONSerializer'已经将它转换为'JSONArray'。你不需要手动做。并且regd'null',确保你传递给'convertPlainObjectToJSON'方法的'obj'不为null。 – SudoRahul 2013-04-29 07:19:27