编程语言
首页 > 编程语言> > (JAVA)IO流之读写单个字节和复制文本文件

(JAVA)IO流之读写单个字节和复制文本文件

作者:互联网

package IODemo;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * @author Alina
 * @date 2021年10月15日 8:19 下午
 * read()方法特点
 * 1.每次只读取一个文件
 * 2.只运行一次,自动向下读取
 * 3.读取到文件末尾,返回负数
 * 4.读取整个文件时,利用read()返回 -1 的特点,进行循环
 */
public class FileInputStreamDemo {
    public static void main(String[] args) {
        try {
            method_copy();

        } catch (IOException e) {
            e.printStackTrace();
        }

    }
    public static void method_read() throws IllegalAccessError, IOException {
        FileInputStream fis = new FileInputStream("/Users/yuzhang/Desktop/test.txt" );
        int x = fis.read();
        System.out.println(x);
        x = fis.read();
        System.out.println(x);
        fis.close();
    }
    public static void method_readsum()throws IllegalAccessError, IOException{
        FileInputStream fis = new FileInputStream("/Users/yuzhang/Desktop/test.txt");
        int y = 0 ;
        while ((y =fis.read()) != -1){
            System.out.print((char)y);
        }
        fis.close();
    }
    public static void method_copy() throws IOException ,IllegalAccessError{
        FileInputStream fis = null;
        FileOutputStream fos = null;
        try{
            int bytes = 0;
            fis = new FileInputStream("/Users/yuzhang/Desktop/test.txt");
            fos = new FileOutputStream("src/IODemo/test.txt");
            while ((bytes=fis.read()) != -1){
                fos.write(bytes);

            }
        }catch (IOException e){
            e.printStackTrace();
            throw new RuntimeException("复制失败");

        }finally{
            try{if(fos != null){fos.close();}
            }catch (IOException e ){
                e.printStackTrace();
                throw new RuntimeException("复制失败");
            }finally {
                try{if((fis!=null)){fis.close();}
                }catch (IOException e ){
                    e.printStackTrace();
                    throw new RuntimeException("复制失败");
                }
            }

        }


    }
}

标签:fis,JAVA,read,流之,IOException,IO,new,FileInputStream,public
来源: https://blog.csdn.net/weixin_45534263/article/details/120814266