JavaI/O:简单的使用Reader和Writer来操作文件

Writer类与Reader类是以字符流传输数据,一个字符是两个字节

字符流除了是以字符方式(两个字节)传输数据外,另外一点与字节流不同的是字符流使用缓冲区,通过缓冲区再对文件进行操作。字节流字节对文件进行操作。使用字符流类时关闭字符流会强制将字符流缓冲区的类容输出,如果不想关闭也将字符流进行输出,使用Writer类的flush()方法。

Reader读取数据:

try {
            Reader reader = new FileReader(
                    "D:\\cmz\\java\\JavaOOP6.0\\pet.template");
            char ch[] = new char[45];
            StringBuffer buffer = new StringBuffer();
            try {
                int length = reader.read(ch);
                while (length != -1) {
                    buffer.append(ch);
                    length = reader.read();
                }
                String str = " 您好!我的名字是{name},我是一只{type}.我的主人是{master}";
                System.out.println("替换前:" + str);
                str = str.replace("{name}", "欧欧");
                str = str.replace("{type}", "狗狗");
                str = str.replace("{master}", "程沐喆");
                System.out.println("替换后:" + str);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally {
                try {
                    reader.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

            }

        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

使用writer操作数据:

String str = "您好!我的名字是欧欧,我是一只狗狗.我的主人是李伟";
        try {
            FileWriter file = new FileWriter("D:\\cmz\\java\\JavaOOP6.0\\pet.template");
            file.write(str);
            if (null!=file) {
                file.close();
                System.out.println("写入成功");
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

转载于:https://blog.51cto.com/13758648/2301444

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值