在我的程序中,我从下面的.dat文件中读取,我希望while循环在到达空白行时停止。在我的代码中,我将它设置为当单词[0]等于null时它将停止。但这并没有发生,我最终得到一个错误。当我把它改为单词[0]!= null或!=" "似乎都不起作用。
DAT
1 2
1 3
2 2
2 3
2 6
3 4
3 5
4 1
4 4
4 5
5 5
5 6
5 7
5 9
6 1
6 8
7 7
7 8
7 9
8 8
8 10
9 8
9 10
10 10
10 4
1 10 10
1 5 2
2 4 7
3 9 4
3 10 1
3 4 3
5 8 2
9 10 1
7 10 4
6 9 3
2 9 5
4 8 2
PROGRAM
import java.util.*;
import java.io.*;
public class matrix{
public static void main(String[] args){
int[][] arrayNums = new int[9][9];
String[] words = new String[10];
// Location of file to read
File file = new File("p8.dat");
try {
BufferedReader br = new BufferedReader(new FileReader(new File("p8.dat")));
words[0]="-1";//TO initiate while loop
while(words[0] != null){
words=br.readLine().split(" ");
if(words[0]!= null){
int num=Integer.parseInt(words[0]);
int numTwo=Integer.parseInt(words[1]);
System.out.println(num+" "+numTwo);
}//END IF
}//END WHILE
}//END TRY---------------------------------------------------------
catch(Exception e){
System.err.println("Error: Target File Cannot Be Read");
}
}//end main-----------------------------------------------------------
}//end class
输出
1 2
1 3
2 2
2 3
2 6
3 4
3 5
4 1
4 4
4 5
5 5
5 6
5 7
5 9
6 1
6 8
7 7
7 8
7 9
8 8
8 10
9 8
9 10
10 10
10 4
Error: Target File Cannot Be Read
答案 0 :(得分:2)
当它到达空白行时停止。在我的代码中,我将它设置为当单词[0]等于null时它将停止
如果到达流的末尾,则BufferedReader只会返回null
。要检查空行,检查返回的字符串的长度 - 如果长度为0,那么您已到达空行(您也可以选择修剪该行以确保在计算长度时省略前导和尾随空格)< / p>
String line = br.readLine();
if(line.trim().length() != 0){
//line is not empty
}
答案 1 :(得分:0)
String option = request.getParameterName("recordLimit") // get option selected
session.setAttrubute("recordLimit", option) // display last option selected from session