使用 java 读取文本文件,eclipse kepler
Read text file using java , 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>
我需要逻辑来继续读取日志,直到它读取到最终的 "Success" 字符串,直到它没有读取到,它不应该打印任何空白行。
如何解决?
试试这个:
while(!(line = reader.readLine()).equals("Success")) {
if (line.trim().length() != 0) {
out.println(line+"\n");
}
}
line
直接传递给 out
流。 StringBuilder的使用在这里不是很明显
正如epoch所说,“!=”与"equals()"不同。如果您要比较 Strings
,请始终使用 "equals()"。
while(!(line = reader.readLine()).equals("Success")) {...}
你可以这样实现:
while ((line = reader.readLine()) != null) {
if (line.trim().length() == 0) {
continue;
}
if (line.equals("Success")) {
break;
} else {
// perform required operation
}
}
我是 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>
我需要逻辑来继续读取日志,直到它读取到最终的 "Success" 字符串,直到它没有读取到,它不应该打印任何空白行。
如何解决?
试试这个:
while(!(line = reader.readLine()).equals("Success")) {
if (line.trim().length() != 0) {
out.println(line+"\n");
}
}
line
直接传递给 out
流。 StringBuilder的使用在这里不是很明显
正如epoch所说,“!=”与"equals()"不同。如果您要比较 Strings
,请始终使用 "equals()"。
while(!(line = reader.readLine()).equals("Success")) {...}
你可以这样实现:
while ((line = reader.readLine()) != null) {
if (line.trim().length() == 0) {
continue;
}
if (line.equals("Success")) {
break;
} else {
// perform required operation
}
}