0

我将拥有大型文本文件(隐私声明等,可能不超过 100k),我希望将它们放在 /assets 或 /raw 文件夹中,而不是放在我的 @strings 文件中。

另外,我想从 xml 将它们加载到文本视图中,我知道我可以通过编程方式完成。

我知道的一种方法是扩展文本视图并声明一个样式属性,解析它并从后面的代码中做我需要的东西。

但是在 android 中是否有本地方式来做到这一点?无需我为它编写逻辑?这看起来并不罕见。

4

1 回答 1

0

要显示文件内容,您可以这样做:“代码”是目录的名称,FILE_RECEIVE 是要打开的文件的名称。

  InputStream ss;
    String code;
    String content = "";
    try{
        files = assetManager.list("Codes");
        ss=getAssets().open("Codes/"+FILE_RECEIVE);
        content= convert_to_String(ss);
    }
    catch (FileNotFoundException e)
    {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }



public String convert_to_String(InputStream ss)
{

    BufferedReader bufferedReader=null;
    StringBuilder stringBuilder=new StringBuilder();
    String line;
    try{
        bufferedReader= new BufferedReader(new InputStreamReader(ss));
        while ((line=bufferedReader.readLine())!=null)
        {    stringBuilder.append("\n");
            stringBuilder.append(line);
        }
    }catch (IOException e){
        e.printStackTrace();
    } finally {
        if (bufferedReader != null) {
            try {
                bufferedReader.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    return  stringBuilder.toString();

}
于 2016-03-06T10:14:15.493 回答