最近自己写个小demo,用到了assets文件里面的内容。猛的没想起来怎么使用。就记录下来
移动端开发中,和后台的交互方式不外乎json和xml,由于json的轻量级以及易用性,所以现在的交互协议基本基于前者。很多开发者遇到过后台下发数据还未部署好,或者是规律性展示的数据需要保存在本地,那么可以将数据配置为json并创建一个txt文件放入asset中(对于前者作为测试数据),然后再程序中通过以下方法来读取。其中fireName为保存json的txt文件名,例如json.txt
public class Util {
...
/**
* 从asset路径下读取对应文件转String输出
* @param mContext
* @return
*/
public static String getJson(Context mContext, String fileName) {
// TODO Auto-generated method stub
StringBuilder sb = new StringBuilder();
AssetManager am = mContext.getAssets();
try {
BufferedReader br = new BufferedReader(new InputStreamReader(
am.open(fileName)));
String next = "";
while (null != (next = br.readLine())) {
sb.append(next);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
sb.delete(0, sb.length());
}
return sb.toString().trim();
}
}
然后是 asset 里面的html文件
url = "file:///android_asset/center/index.html";
break;
case Constant.ACTION_LOAD_HELP:
url = "file:///android_asset/center/helper.html";
break;
case Constant.ACTION_LOAD_AGREE:
url = "file:///android_asset/center/user-agreement.html";
甚至 是 用到 webView的时候需要拼接出来个 html文件,并且使用 css的时候
String temp = "\n" +
"
\n" +
"\n" +
"\n" +
"
\n" +
bean.getKl_list() + "\n" +
"\n" +
"";
bean.getKl_list() 是 bean中的 语言知识基础 >> 语言知识运用 >> 字音
拼接后是