0

我正在尝试读取 .txt 文件。但在文本视图中,文本未格式化。我,即使我已经给出了新行,文本视图中也没有新行。句子是连续的。可以格式化吗?代码是这样的

final StringBuffer buffer = new StringBuffer();

    try{
        DataInputStream dataIO= new DataInputStream(getResources().openRawResource(R.raw.chapter1));
        String strLine= null;
        while((strLine = dataIO.readLine())!=null){
            buffer.append(strLine);
        }
        dataIO.close();
    }catch(Exception e){

    }
    TextView tv=(TextView) findViewById(R.id.chapter);
    tv.setText(buffer.toString());


}
4

2 回答 2

3

参考DataInputStream.readLine()的文档

该字符串不包括换行符序列。

因此strLine,您附加到的StringBuffer将不​​包含换行符。您可以按如下方式修改您的代码:

    while((strLine = dataIO.readLine())!=null){
        buffer.append(strLine);
        buffer.append('\n');
    }
于 2012-10-31T07:22:35.043 回答
0

读取文件后将文件内容存储在字符串中,如下所示:

String fileContent = buffer.toString().replaceAll("\\r|\\n", "<br />");

然后,在您的文本视图中将文本设置为 HTML :

txtview.setText(Html.fromHtml(fileContent));
于 2012-10-31T07:17:40.070 回答