/** * 按行读取txt * * @param is * @return * @throws Exception */ private String readTextFromSDcard(InputStream is) throws Exception { InputStreamReader reader = new InputStreamReader(is, "UTF-8"); BufferedReader bufferedReader = new BufferedReader(reader); StringBuffer buffer = new StringBuffer(""); String str; while ((str = bufferedReader.readLine()) != null) { buffer.append(str); buffer.append("\n"); } return buffer.toString(); } /** * 从Asset读取text文件 * @param filename 文件名 * */ private void getContentByAsset(String filename){ try { AssetManager am = getAssets(); InputStream is = am.open(filename); final String content = readTextFromSDcard(is) + ""; runOnUiThread(new Runnable() { @Override public void run() { mContentTv.setText(content); } }); } catch (IOException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } }