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();
        }

原文地址:http://blog.51cto.com/13758648/2301444

时间: 2024-10-05 11:32:45

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

Java之IO(十)Reader和Writer

转载请注明源出处:http://www.cnblogs.com/lighten/p/7071733.html 1.前言 之前的章节已经将Java8的io包中的字节流介绍完毕了.本章开始介绍Java的IO中另一个重要的体系,字符流.字节是给计算机看的,字符才是人能够认识的,可想而知字符流的重要性.字符流体系的根源在于抽象父类Reader和Writer.一切都起源于这两个类. 2.Reader Reader实现了Readable和Closeable接口,这两个接口从JDK1.5开始出现.Reader

Java IO: Reader And Writer

原文链接 作者: Jakob Jenkov  译者: 李璟([email protected]) Java IO的Reader和Writer除了基于字符之外,其他方面都与InputStream和OutputStream非常类似.他们被用于读写文本.InputStream和OutputStream是基于字节的,还记得吗? Reader Reader类是Java IO中所有Reader的基类.子类包括BufferedReader,PushbackReader,InputStreamReader,St

Java IO: Reader和Writer

作者: Jakob Jenkov 译者: 李璟([email protected]) Reader 原文链接 Reader是Java IO中所有Reader的基类.Reader与InputStream类似,不同点在于,Reader基于字符而非基于字节.换句话说,Reader用于读取文本,而InputStream用于读取原始字节. 请记住,Java内部使用UTF8编码表示字符串.输入流中一个字节可能并不等同于一个UTF8字符.如果你从输入流中以字节为单位读取UTF8编码的文本,并且尝试将读取到的字

java 使用Reader和Writer对文件内容的拷贝

package com.hc.fileio; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.Reader; import java.io.Writer; /**对文件内容的拷贝 * @author MaskedMen *Reader和Writer只能读写字符流 */ public class ReaderWr

字符流Reader、Writer,字符转换流 OutputStreamWriter、InputStreamReader

Reader.Writer是所有字符流的超类. Writer类方法 void write(String str) void write(char[] cbuf, int off, int len); void flush() void close OutputStreamWriter构造方法字符编码默认为系统编码,可以不写 FileWriter的append默认为false,可以不写.另一个构造(File file, boolean append) Writer out = new FileWr

Java:IO流之字符流Reader、Writer详解

java.io包中:字符流 字符流的两个抽象基类: Reader         Writer 文件的读取:Reader抽象类(java.io包中) 直接子类的构造方法: FileReader(File file) 在给定从中读取数据的 File 的情况下创建一个新 FileReader. FileReader(FileDescriptor fd) 在给定从中读取数据的 FileDescriptor 的情况下创建一个新 FileReader. FileReader(String fileName

JavaI/O:简单的使用FileInput和FileOutputStream操作文件流

java的输入输出建立在4个抽象类的基础上:InputStream.OutputStream.Reader.Writer.InputSream和OutputStream被设计成字节流类,而Reader和Writer被设计成字符流类.一般来说,处理字符或者字符串时应该使用字符流类,处理字节或者二进制对象时应该使用字节流类. InputStream(输入流):输入流是用来读入数据的.- - - > > >读入OutputStream(输出流):输出流是用来写出数据的.- - - > &

操作文件方法简单总结(File,Directory,StreamReader,StreamWrite ) - Zery-zhang

一 基本介绍 操作文档,文件夹,需要用到的类 1 Directory (静态类) :      用于创建.移动和删除等操作通过 目录 和子 目录 DirectoryInfo (非静态): 2 File (静态类)  : 提供用于创建.复制.删除.移动和打开文件的静态类,并协助创建 FileStream 对象 FileInfo (非静态) 3 StreamReader : 实现一个 TextReader,使其以一种特定的编码从字节流中读取字符 StreamWriter : 实现一个 TextWri

Android jni aes加解密,实现文件的加解密,具体实现可以自行修改,上面的代码为简单介绍,下面的是JNI端实现文件加解密,可以修改为字符串加解密

#include "aes.h" #include "modes.h" #include "e_os2.h" #include "aes_locl.h" #include "opensslconf.h" AES_KEY aes; //aes cbc模式加解密用到的向量 unsigned char iv[AES_BLOCK_SIZE]; for (i = 0; i < AES_BLOCK_SIZE; i