IO流的使用(一)

IO流的使用(一)

java中的IO流真的很重要,但是流的种类又有很多,很难搞的清楚,我们需要慢慢学习,渐渐的熟悉它。
先说字符流吧~
字符流的抽象基类: Reader 和Writer(读和写),他们都是抽象类,abstract修饰的。
字符流–就是用来读写字符的,像中文汉字、英文字母之类。

Writer

Writer(abstract)—OutputStreamWriter(abstract)—FileWriter(实现类)
flush()方法:刷新流对象中缓冲的数据
close()方法:关闭流资源,但是关闭流之前会刷新一次缓冲中的数据
区别:flush()刷新后,流可以继续使用,但是close()刷新后,会将流关闭。

文件的续写

在FileWriter的构造方法中,传递一个参数true,代表不覆盖已有文件,并在已有文件的末尾进行文件的续写。
**关于续写文件的换行
在java中 \n表示换行,在windows中,换行用\r\n。所以文件如果要换行的话,请写入\r\n。

Reader

read()方法:一次读一个字符,而已会自动往下读。读取完毕,返回-1.

demo:文件的复制
package com.bxd.shiba;

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class CopyFileTest {

    public static void main(String[] args) {
        copy();
    }

    private static void copy(){
        FileReader fr = null;
        FileWriter fw = null;
        try {
            fr = new FileReader("F:\\javaworkspaces\\J2SEBase\\src\\com\\bxd\\shiba\\RuntimeTest.java");
            fw = new FileWriter("F:\\javaworkspaces\\J2SEBase\\src\\com\\bxd\\shiba\\RuntimeTest_copy.java");

            char[] buf = new char[1024];
            int len = 0;
            if(-1 != (len=fr.read(buf))){
                fw.write(buf, 0, len);
            }

        } catch (Exception e) {
            throw new RuntimeException("文件读写失败");
        } finally {
            if(fr!=null){
                try {
                    fr.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if(fw!=null){
                try {
                    fw.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值