![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2Lc1TP3pVeWJDWtRmbZZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39jN1gTM0kTMyIDMxQDM3EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
Reader和Writer代表字符输入流和字符输出流,它们读写是以字符为单位的,但在处理字符信息量比较多,性能较低。BufferedReader和BufferedWriter是对字符输入流和字符输出流包装,其内置缓冲区,允许一次读写一行,既提高了性能也带来了编程的方便,实际我们在字符IO处理时,使用这两个类场景比较多。常用方法列举如下:
BufferedReader:
String readLine(); 从流中读取一行字符,以\n作为行标记
BufferedWriter:
writer(String);将字符串输出到目标流中。
newline();将换行符\n输出到目标字符流中。
|
示例2代码:
public class TestReader { public static void main(String[] args) { Reader reader = null; BufferedReader br=null; try { reader = new FileReader("rw.txt"); br=new BufferedReader(reader); String line=null; while((line=br.readLine())!=null){ System.out.println(line); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } if (reader != null) { try { reader.close(); } catch (IOException e) { e.printStackTrace(); } } } } } |