【Java学习笔记】24:缓冲流(缓冲字节流缓冲字符流)

xiaoxiao2021-02-28  82

缓冲流在原有I/O流的基础上进行封装,提供了缓冲的功能,可以提高性能。(把要操作的数据放进缓冲区,然后一次性把缓冲区的内容写到目的地,而不是写一次就往目的地写一次。) 注:快速加包Ctrl+Shift+O

[1]BufferedOutputStream(缓冲字节输出流)

package t1; import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; public class Test { public static void main(String[] args) { test1(); } private static void test1() { BufferedOutputStream out=null; try { out=new BufferedOutputStream(new FileOutputStream("C:\\Users\\Shinelon\\Desktop\\sb.txt")); out.write("Hello World!".getBytes()); } catch (Exception e) { e.printStackTrace(); }finally{//最终关闭 if(out!=null) try { out.close(); } catch (IOException e) { e.printStackTrace(); } } } }

[2]BufferedInputStream(缓冲字节输入流)

package t1; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; public class Test { public static void main(String[] args) { test2(); } private static void test2() { BufferedInputStream in=null; try { in=new BufferedInputStream(new FileInputStream("C:\\Users\\Shinelon\\Desktop\\sb.txt")); byte[] buffer=new byte[1024]; in.read(buffer); System.out.println(new String(buffer).trim()); } catch (Exception e) { e.printStackTrace(); }finally{ if(in!=null) try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } }

运行结果: Hello World!

[3]BufferedWriter(缓冲字符输出流)

package t1; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; public class Test { public static void main(String[] args) { test3(); } private static void test3() { BufferedWriter out=null; try { out=new BufferedWriter(new FileWriter("C:\\Users\\Shinelon\\Desktop\\sb.txt")); out.write("你好,世界!"); } catch (Exception e) { e.printStackTrace(); }finally{ if(out!=null) try { out.close(); } catch (IOException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } } } }

[4]BufferedReader(缓冲字符输入流)

package t1; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class Test { public static void main(String[] args) { test4(); } private static void test4() { BufferedReader in=null; String str=null;//用于读取每一行 try { in=new BufferedReader(new FileReader("C:\\Users\\Shinelon\\Desktop\\sb.txt")); while((str=in.readLine())!=null){//按行读取 System.out.println(str);//并输出 } } catch (Exception e) { e.printStackTrace(); }finally{ if(in!=null) try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } }

运行结果: 你好,世界! 你好,世界? 你好,世界… …

转载请注明原文地址: https://www.6miu.com/read-61762.html

最新回复(0)