字符流扩展实例

字符流扩展实例

FileReader
import java.io.FileReader;

/**
 * @author Nigori
 * @date 2020/8/8
 **/
public class FileReaderDemo {
    public static void main(String[] args) throws Exception {
        //创建FileReader文件字符输入流
        FileReader fileReader = new FileReader("IOStreamTest/FileReaderDemo.txt");
        //单个字符读取
        /*int data = 0;
        while ((data=fileReader.read())!=-1) {
            System.out.println((char) data);
        }*/
        //多字符读取
        char[] buf = new char[10];
        int count = 0;
        while ((count=fileReader.read(buf))!=-1) {
            System.out.println(new String(buf,0,count));
        }
        //关闭
        fileReader.close();
    }
}

FileWriter
import java.io.FileWriter;

/**
 * @author Nigori
 * @date 2020/8/8
 **/
public class FileWriterDemo {
    public static void main(String[] args) throws Exception {
        FileWriter fileWriter = new FileWriter("IOStreamTest/FileWriterDemo.txt");
        for (int i = 0; i < 10; i++) {
            fileWriter.write("java入门到精通!\r\n");
            fileWriter.flush();
        }
        fileWriter.close();
    }
}

FileReader + FileWriter
import java.io.FileReader;
import java.io.FileWriter;

/**
 * 使用FileReader和FileWriter复制文本文件,不能复制图片或二进制文件
 * @author Nigori
 * @date 2020/8/8
 **/
public class FileRWCopyDemo {
    public static void main(String[] args) throws Exception {
        FileReader fr = new FileReader("IOStreamTest/FileRWCopyDemo_1.txt");
        FileWriter fw = new FileWriter("IOStreamTest/FileRWCopyDemo_2.txt");

        //读写
        int data = 0;
        while ((data=fr.read())!=-1) {
            fw.write(data);
            fw.flush();
        }
        fr.close();
        fw.close();
    }
}

InputStreamReader
import java.io.FileInputStream;
import java.io.InputStreamReader;

/**
 * 使用InputStreamReader读取文件,使用指定的编码
 * @author Nigori
 * @date 2020/8/8
 **/
public class InputStreamRDemo {
    public static void main(String[] args) throws Exception {
        FileInputStream fis = new FileInputStream("IOStreamTest/IStreamRDemo.txt");
        InputStreamReader isr = new InputStreamReader(fis,"utf-8");

        int data = 0;
        while((data=isr.read())!=-1) {
            System.out.println((char) data);
        }
        isr.close();
    }
}
OutputStreamWriter
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;

/**
 * 使用OutputStreamWriter写入文件,使用指定的编码
 * @author Nigori
 * @date 2020/8/8
 **/
public class OutputStreamWDemo {
    public static void main(String[] args) throws Exception {
        FileOutputStream fos = new FileOutputStream("IOStreamTest/OStreamWDemo.txt");
        OutputStreamWriter osw = new OutputStreamWriter(fos,"utf-8");

        for (int i = 0; i < 10; i++) {
            osw.write("今天的天气很好!\r\n");
            osw.flush();
        }
        osw.close();
    }
}

PrintWriter
import java.io.PrintWriter;

/**
 * 使用PrintWriter打印输出
 * @author Nigori
 * @date 2020/8/8
 **/
public class PrintWriteDemo {
    public static void main(String[] args) throws Exception {
        //创建打印流
        PrintWriter pw = new PrintWriter("IOStreamTest/PrintWriteDemo.txt");
        //打印
        pw.println(97);
        pw.println(true);
        pw.println(3.14);
        pw.println('a');
        pw.println("asr");
        //关闭
        pw.close();
    }
}

BufferedReader
import java.io.BufferedReader;
import java.io.FileReader;

/**
 * 使用BufferedReader(字符读取缓冲流)读取文件
 * @author Nigori
 * @date 2020/8/8
 **/
public class BufferedReaderDemo {
    public static void main(String[] args) throws Exception {
        FileReader fr = new FileReader("IOStreamTest/BufferedReaderDemo.txt");
        BufferedReader br = new BufferedReader(fr);

        /*//方式一:
        char[] buf = new char[1024];
        int count = 0;
        while ((count=br.read(buf))!=-1) {
            System.out.println(new String(buf,0,count));
        }*/
        //方式二:
        String line = null;
        while ((line=br.readLine())!=null) {
            System.out.println(line);
        }
        //关闭
        br.close();
    }
}

BufferedWriter
import java.io.BufferedWriter;
import java.io.FileWriter;

/**
 * 使用BufferedWriter(字符写入缓冲流)写入磁盘
 * @author Nigori
 * @date 2020/8/8
 **/
public class BufferedWriterDemo {
    public static void main(String[] args) throws Exception {
        FileWriter fw = new FileWriter("IOStreamTest/BufferedWriterDemo.txt");
        BufferedWriter bw = new BufferedWriter(fw);

        for (int i = 0; i < 10; i++) {
            bw.write("深入理解JVM!");
            bw.newLine();       //写入一个换行符
            bw.flush();
        }
        bw.close();
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值