IO流基础回顾

package com.io.learn;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

/**
 * Created by 79782 on 2018/6/22.
 */
public class ReadAndWrite {
    public static void main(String[] args) throws Exception{
        File srcFile=new File("D:\\iotest\\IORead.txt");
        File destFile=new File("D:\\iotest\\IOWrite.txt");
        FileInputStream fis=new FileInputStream(srcFile);
        //int取值范围:-2^31-2^31-1 2147483647
        //byte[] b=new byte[2147483647] =2047MB
        byte[] b=new byte[(int) srcFile.length()];
        fis.read(b);
        FileOutputStream fos=new FileOutputStream(destFile);
        fos.write(b);
        String str=new String(b);
        System.out.println(str);
        //先关输出流再关输入流
        fos.close();
        fis.close();
        Runtime.getRuntime().exec("notepad "+destFile.getAbsolutePath());

    }
}


package com.io.learn;

import java.io.*;

/**
 * Created by 79782 on 2018/6/22.
 */
public class Demo2 {
    public static void main(String[] args) throws Exception{
        File srcFile=new File("D:\\iotest\\IORead.txt");
        File destFile=new File("D:\\iotest\\IOWrite.txt");
        FileReader fr=new FileReader(srcFile);
        char[] cbuf=new char[(int) srcFile.length()];
        //字节流可以处理任何类型的数据,字符流一般用于处理文本,字符流是字节流转换而来
        fr.read(cbuf);
        FileWriter fw=new FileWriter(destFile);
        fw.write(cbuf);
        
        fw.close();
        fr.close();
        Runtime.getRuntime().exec("notepad "+destFile.getAbsolutePath());
    }
}

package com.io.learn;

import java.io.*;

/**
 * Created by 79782 on 2018/6/22.
 */
public class Demo3 {
    public static void main(String[] args) throws Exception{
        File srcFile=new File("D:\\iotest\\IORead.txt");
        File destFile=new File("D:\\iotest\\IOWrite.txt");
        /*FileReader fr=new FileReader(srcFile);
        int a=-1;
        while((a=fr.read())!=-1){
            System.out.print((char)a);
        }
        fr.close();*/
        //用字节流读取乱码
        /*FileInputStream fis=new FileInputStream(srcFile);
        int a=-1;
        while((a=fis.read())!=-1){
            System.out.print((char)a);
        }
        fis.close();*/
        FileInputStream fis=new FileInputStream(srcFile);
        InputStreamReader ir = new InputStreamReader(fis);
        int a=-1;
        while((a=ir.read())!=-1){
            System.out.print((char)a);
        }
        ir.close();
        fis.close();
    }
}

package com.io.learn;

import java.io.*;

/**
 * Created by 79782 on 2018/6/22.
 */
public class Demo4 {
    public static void main(String[] args) throws Exception{
        File srcFile=new File("D:\\iotest\\IORead.txt");
        File destFile=new File("D:\\iotest\\IOWrite.txt");

        FileInputStream fis=new FileInputStream(srcFile);
        InputStreamReader ir = new InputStreamReader(fis);
        BufferedReader br=new BufferedReader(ir);
        BufferedWriter bw=new BufferedWriter(new FileWriter(destFile));
        String str="";
        while((str=br.readLine())!=null){
            bw.write(str);
            bw.newLine();//换行
        }
        bw.close();
        br.close();
        ir.close();
        fis.close();
        Runtime.getRuntime().exec("notepad " + destFile.getAbsolutePath());
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_40839342/article/details/80768514