8D public class Properties1
9D public staticvoidmain(String[]args)throwsIoException+
10 BufferedReader bufferedReader = new BufferedReaderCnew FileReaderC fileName:wsrc\\mysqL.properties"));
11 String Line=
12 while(bufferedReader.readLineC !=nuL
13 System.out.printinCbufferedReader.readLineC);
14
5 bufferedReader.coseC;
16
口 Properties01
D
E:lJAvA\binljava.exe
Users=root
null
读取的内容不保存的话,因为已读标志(读取偏移量)已经修改,下次再读就是其他内容了
【以下回答由 GPT 生成】
原因是在循环中,每次调用bufferedReader.readLine()
方法实际上读取的是文件中的下一行,并将该行作为字符串返回。但在代码中,第12行和第13行分别调用了两次readLine()
方法,导致每次循环实际上读取了两行。
正确的写法应该是将每次读取到的内容赋给line
变量,然后使用line
变量进行处理。
以下是正确的代码示例:
public class Properties1 {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new FileReader("src\\mySQL.properties"));
String line;
while((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
bufferedReader.close();
}
}
在上述代码中,我们将每次读取到的内容赋给line
变量,并在循环中使用line
变量进行处理,确保每次循环都是读取到的同一行内容。
【相关推荐】