前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java IO流之三 使用缓冲流来读写文件

java IO流之三 使用缓冲流来读写文件

作者头像
bear_fish
发布2018-09-19 15:49:32
2.1K0
发布2018-09-19 15:49:32
举报

http://blog.csdn.net/a107494639/article/details/7586689

一、通过BufferedReader和BufferedWriter来读写文件

     使用缓冲流的好处是,能够更高效的读写信息,原理是将数据先缓冲起来,然后一起写入或者读取出来。经常使用的是readLine()方法,表示一次读取一行数据。

[java] view plain copy

代码语言:javascript
复制
 package org.example.io;  
  
 import java.io.BufferedReader;  
 import java.io.BufferedWriter;  
 import java.io.File;  
 import java.io.FileNotFoundException;  
 import java.io.FileReader;  
 import java.io.FileWriter;  
 import java.io.IOException;  
  
 public class TestBufferedWriter {  
  
  public static void main(String[] args) throws Exception {  
         write();  
         read();  
     }  
  
  /** 
      * DOC 读取信息. 
      *  
      * @throws FileNotFoundException 
      * @throws IOException 
      */ 
  private static void read() throws FileNotFoundException, IOException {  
         File file = new File("E:\\a.txt");// 指定要读取的文件 
  // 获得该文件的缓冲输入流 
         BufferedReader bufferedReader = new BufferedReader(new FileReader(file));  
         String line = "";// 用来保存每次读取一行的内容 
  while ((line = bufferedReader.readLine()) != null) {  
             System.out.println(line);  
         }  
         bufferedReader.close();// 关闭输入流 
     }  
  
  /** 
      * DOC 写入信息. 
      *  
      * @throws IOException 
      */ 
  private static void write() throws IOException {  
         File file = new File("E:\\a.txt");// 指定要写入的文件 
  if (!file.exists()) {// 如果文件不存在则创建 
             file.createNewFile();  
         }  
  // 获取该文件的缓冲输出流 
         BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));  
  // 写入信息 
         bufferedWriter.write("你好世界");  
         bufferedWriter.newLine();// 表示换行 
         bufferedWriter.write("hello world");  
         bufferedWriter.flush();// 清空缓冲区 
         bufferedWriter.close();// 关闭输出流 
     }  
  
 }  

二、使用BufferedInputStream和BufferedOuputStream读写图片

使用方式和FileInputStrem和FileOutputStream基本一致:

[java] view plain copy

代码语言:javascript
复制
 package org.example.io;  
  
 import java.io.BufferedInputStream;  
 import java.io.BufferedOutputStream;  
 import java.io.File;  
 import java.io.FileInputStream;  
 import java.io.FileOutputStream;  
  
 public class TestBufferedString {  
  
  public static void main(String[] args) throws Exception {  
  // 指定要读取文件的缓冲输入字节流 
         BufferedInputStream in = new BufferedInputStream(new FileInputStream("F:\\test.jpg"));  
         File file = new File("E:\\test.jpg");  
  if (file != null) {  
             file.createNewFile();  
         }  
  // 指定要写入文件的缓冲输出字节流 
         BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file));  
  byte[] bb = new byte[1024];// 用来存储每次读取到的字节数组 
  int n;// 每次读取到的字节数组的长度 
  while ((n = in.read(bb)) != -1) {  
             out.write(bb, 0, n);// 写入到输出流 
         }  
         out.close();// 关闭流 
         in.close();  
     }  
  
 }  
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016年08月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、通过BufferedReader和BufferedWriter来读写文件
  • 二、使用BufferedInputStream和BufferedOuputStream读写图片
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档