程序功能:读取本地JSON文件,并显示到LsitView上,下面详细介绍:
1 [2 {3 "operator":"admin1",4 "loginDate":"2012-10-20 10:28:10",5 "logoutDate":"2012-10-20 10:32:10"
6 },7 {8 "operator":"admin2",9 "loginDate":"2012-10-22 10:20:10",10 "logoutDate":"2012-10-22 10:32:10"
11 },12 {13 "operator":"admin3",14 "loginDate":"2012-10-23 10:28:10",15 "logoutDate":"2012-10-23 10:32:10"
16 },17 {18 "operator":"admin4",19 "loginDate":"2012-10-20 10:28:10",20 "logoutDate":"2012-10-20 10:32:10"
21 }22 ]
先准备内容如上的"json.txt"文件,放到项目的assets目录下(此处可以是本地SD卡只是读取的方式有些异同)。首先要读出json.txt的内容,要访问assets下的资源,需要使用AssetManager类的open(filename)方法,文中省去(AssetManager assetManager = getAssets();)步骤,简写为Context.getAssets().open(filename)。open方法返回一个输入流,我们便可以通过这个流来得到json字符串。
1 /**
2 * 读取本地文件中JSON字符串3 *4 *@paramfileName5 *@return
6 */
7 privateString getJson(String fileName) {8
9 StringBuilder stringBuilder = newStringBuilder();10 try{11 BufferedReader bf = new BufferedReader(newInputStreamReader(12 getAssets().open(fileName)));13 String line;14 while ((line = bf.readLine()) != nul