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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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();
        }

以上是关于JavaI/O:简单的使用Reader和Writer来操作文件的主要内容,如果未能解决你的问题,请参考以下文章

Java I/O系列

JavaI/O:简单的使用BufferedOutputStream和BufferedInputStr

JavaI/O:简单的使用DataOutputStream和DataInputStream操作文件流

初探java I/O 工作机制

JavaI/O:使用InputStreamReader和BufferedReade实现控制器输入输出

JavaI/O:使用InputStreamReader和BufferedReade实现控制器输入输出