使用java,eclipse kepler读取文本文件

时间:2015-01-23 09:06:56

标签: java jsp bufferedreader eclipse-kepler

我是Java的新手,我目前在Eclipse Kepler工作。我有一个JSP页面,我正在阅读一个文本文件,该文件不断使用shell脚本编写。

                <b>
                    <%
                        String filePath = "/home/default/test.txt";
                        BufferedReader reader = new BufferedReader(new FileReader(filePath));
                        StringBuilder sb = new StringBuilder();
                        String line;

                        while((line = reader.readLine()) != "Success"){
                            sb.append(line+"\n");
                            out.println(sb.toString());
                        }                       
                    %>
                </b>

我需要逻辑来继续阅读日志,直到它读到最终的&#34;成功&#34;字符串,直到它没有,它不应该打印任何空行。

如何解决?

3 个答案:

答案 0 :(得分:2)

你可以这样做:

while ((line = reader.readLine()) != null) {
            if (line.trim().length() == 0) {
                continue;
            }

            if (line.equals("Success")) {
                break; 
            } else {
                // perform required operation
            }

  }

答案 1 :(得分:1)

正如epoch所说,“!=”与“equals()”不同。如果您要比较Strings,请始终使用“equals()”。

while(!(line = reader.readLine()).equals("Success")) {...}

答案 2 :(得分:0)

试试这个:

while(!(line = reader.readLine()).equals("Success")) {
    if (line.trim().length() != 0) {
       out.println(line+"\n");
    }
}

line直接传递给out流。 StringBuilder的使用在这里并不明显。