如何将值对象的数组转换为json?

use*_*284 1 android json

我有一个这种类的数组:

 public class IndexVO {
     public int myIndex;
     public String result;
 }
Run Code Online (Sandbox Code Playgroud)

这是我的阵列:

     IndexVo[] myArray = { indexvo1, indexvo2 };
Run Code Online (Sandbox Code Playgroud)

我想将这个数组转换为json,任何想法如何?

a.c*_*ch. 5

这不会像JSONArray mJSONArray = new JSONArray(Arrays.asList(myArray))您的数组包含不受支持的类的对象那样容易.因此,您将需要付出更多努力:

JSONArray mJSONArray = new JSONArray();
for (int i = 0; i < myArray.length; i++)
    mJSONArray.put(myArray[i].toJSON());
Run Code Online (Sandbox Code Playgroud)

toJSON()为您的IndexVo类添加方法:

public JSONObject toJSON() {
    JSONObject json = new JSONObject();
    ...
    //here you put necessary data to json object
    ...
    return json;
}
Run Code Online (Sandbox Code Playgroud)

但是,如果您需要为多个类生成JSON,那么请考虑自动执行它的库,例如flexjson.