BufferedReader.mark方法参数问题
BufferedReader有一个标记方法mark。
使用这个方法需要穿进去一个参数,参数的意思,一直没有弄明白。
看过官方文档,也看过一些资料。
目前理解使用mark方法传入的参数表示:
1、读取之后可在读取的字符长度。
2、可读取的字符长度。
如果是一种理解,数据都读取完了为什么还要多余设置读取完之后还可以在读取字符的长度?
如果是第二种理解,那么我将mark中的参数设置为0也是可以运行。
请大家告诉我真想,谢谢你们。
请不要复制网络上的参考资料或是官方文档的解释。
也不要复制别人的代码给我看。
下面是我的代码,就当前这个代码,帮忙解释一下这个参数在这里有什么用?
try { FileReader f = new FileReader("c:/a.txt"); BufferedReader br = new BufferedReader(f); String read = br.readLine(); while(read != null){ System.out.println(read); read = br.readLine(); if(br.markSupported()){ if(read.equals("511111")){ System.out.println("标记位置在511111"); br.mark(0); } if(read.equals("911111")){ System.out.println("读取到这行返回到标记位置循环读取"); br.reset(); } } } br.close(); f.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }