没有获取格式化的文本

时间:2012-10-31 07:12:27

标签: android

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

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());


}

2 个答案:

答案 0 :(得分:3)

请参阅DataInputStream.readLine()

的文档
  

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

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

    while((strLine = dataIO.readLine())!=null){
        buffer.append(strLine);
        buffer.append('\n');
    }

答案 1 :(得分:0)

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

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

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

txtview.setText(Html.fromHtml(fileContent));