在Android应用开发中,经常会遇到需要读取txt文件中的json数据的情况。这里介绍一种便捷的方法。
/** * 从txt文件中读取json数据 * @param context 上下文 * @param fileName 文件名 * @return 解析后的json对象 */ public static JSONObject parseJsonFromTxt(Context context,String fileName) { StringBuilder builder = new StringBuilder(); try { InputStream inputStream = context.getAssets().open(fileName); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream,"UTF-8")); String line; while ((line = bufferedReader.readLine()) != null) { builder.append(line); } bufferedReader.close(); inputStream.close(); } catch (IOException e) { e.printstacktrace(); } String jsonStr = builder.toString(); try { JSONObject jsonObject = new JSONObject(jsonStr); return jsonObject; } catch (JSONException e) { e.printstacktrace(); } return null; }
上述代码中,parseJsonFromTxt()方法接收上下文和文件名两个参数,返回解析后的json对象。其中,通过context.getAssets().open(fileName)方法获取文件输入流,再通过BufferedReader按行读取txt文件中的json数据,最终将读取到的json数据传入JSONObject构造方法中,即可得到解析后的json对象。
JSONObject jsonObject = parseJsonFromTxt(this,"data.txt");
需要注意的是,读取文件时需加入try-catch代码块捕获可能出现的IOException和JSONException异常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。