我是java的新手
我有一个像这样的r.txt文件
A
B
C
X
Y
Z
我想知道如何将readline()与" \ n"一起使用,这样当它开始打印时,它应该在nextline处停止为空白。因为它给了我一个错误。我写得像这样:
while((recordData = br.readLine()) != '\n') //(at line 18 in below code)
"错误:不兼容的操作数类型字符串和字符"。但是,如果没有,则不会。
答案 0 :(得分:3)
it never returns termination character
返回:包含行内容的字符串,不包括任何行终止字符;如果已到达流末尾,则返回null
答案 1 :(得分:3)
'\ n'是一个字符,recordData是一个字符串。您对以下答案更感兴趣
recordData = br.readLine();
while(recordData != null && !recordData.trim().isEmpty()) {
System.out.print(recordData);
recordData = br.readLine();
}
答案 2 :(得分:0)
只要有输入,readLine()
方法将返回单行文本,没有行终止字符,因此不会读取'\n'
个字符。
对于r.txt
文件中的空行,您将获得一个空的或空白的字符串,因此您可以只写
while (((recordData = br.readLine()) != null) && !recordData.trim().isEmpty()))
trim()
方法将涵盖空白行不仅仅是新行,而是包含"空格"字符(例如,SPACE和TAB)。
另一方面,根本不需要recordData
声明。您可以重复使用line
变量。