欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java IO流之字符流

程序员文章站 2023-11-24 22:15:22
1.字符输出流 Writer(只能写入文本文件) 1.1FileWriter类(writer的子类) 构造方法: public class FileWriterDemo { 2.字符输入流Reader 构造方法 2.1FileReader 读取文件 3.文件复制: 上述代码实现将d盘下a.txt文件 ......

1.字符输出流 writer(只能写入文本文件)

Java IO流之字符流

1.1filewriter类(writer的子类)

构造方法:

Java IO流之字符流public class filewriterdemo {

public static void main(string[] args) throws ioexception {
        //演示filewriter 用于操作文件的便捷类。
        filewriter fw = new filewriter("d:\\text\\fw.txt");
        fw.write("你好谢谢再见");//这些文字都要先编码。都写入到了流的缓冲区中。
        fw.flush();  //如果不刷新,数据不会到达目的地
     //写一个字符数组
     char[] c = {'a','b','c','d','e'};
      fw.write(c);
      fw.flush();
     //写数组一部分
      fw.write(c,2,2);
      fw.flush();
fw.close(); } }
//flush():将流中的缓冲区缓冲的数据刷新到目的地中,刷新后,流还可以继续使用。

//刷新内存,将内存中的数据立刻写出。
//在最后工作完成时调用close()也可以刷新内存

//flush() 与 close() 区别在于 close()会关闭流,flush()一般用于处理中时需要将数据立即写出。

2.字符输入流reader

构造方法

Java IO流之字符流

2.1filereader

读取文件

package habin.file;
import java.io.filereader;
import java.io.ioexception;


public class filedemo {
    public static void main(string[] args) throws ioexception {    
        
        filereader fr = new filereader("d:\\a.txt");
        int len = 0;
        while((len=fr.read())!=-1){
            system.out.print((char)len);
        }
        fr.close();
    }
}

3.文件复制:

package habin.file;
import java.io.file;
import java.io.filereader;
import java.io.filewriter;
import java.io.ioexception;

public class filedemo {
    public static void main(string[] args) throws ioexception {    
        
        file file1 = new file("d:\\a.txt");
        file file2 = new file("f:\\b.txt");
        
        filereader fr = new filereader(file1);
        filewriter fw = new filewriter(file2);
        char[] c = new char[2014];
        int len = 0;
        while((len=fr.read(c))!=-1){
            fw.write(c,0,len);
            fw.flush();
        }
        fw.close();
        fr.close();
    }
}

上述代码实现将d盘下a.txt文件中的数据复制到了f盘下的b.txt中