IO流之文件复制(3)

2020-08-18  本文已影响0人  程序员小杰

上一篇:IO流之字节输入流【InputStream】https://www.jianshu.com/p/70c1b8d7a32d

一次读取一个字节的方式

 public static void main(String[] args) throws Exception{
        long startTime = System.currentTimeMillis();
        //创建FileInputStream对象
        FileInputStream fis = new FileInputStream("D:\\dev\\1.jpg");
        //创建FileOutputStream对象
        FileOutputStream fos = new FileOutputStream("D:\\dev\\2.jpg");

        //一次读取一个字节的方式
        int len = 0;
        while ((len = fis.read()) != -1){
            //使用方法write(),将读取的流写入到目的地的文件中
            fos.write(len);
        }
        //释放资源,先关闭写的(如果写完了,肯定读完了)
        fos.close();
        fis.close();
        long endTime = System.currentTimeMillis();
        System.out.println("文件复制共耗时:" + (endTime - startTime) + "毫秒");
    }
image.png

一次读取多个字节的方式

 public static void main(String[] args) throws Exception{
        long startTime = System.currentTimeMillis();
        //创建FileInputStream对象
        FileInputStream fis = new FileInputStream("D:\\dev\\1.jpg");
        //创建FileOutputStream对象
        FileOutputStream fos = new FileOutputStream("D:\\dev\\2.jpg");
        //一次读取多个字节的方式
        byte[] bytes = new byte[1024];
        int len = 0;
        while((len = fis.read(bytes)) != -1){
            //使用方法write(),将读取的流写入到目的地的文件中
            fos.write(bytes,0,len);
        }
        //释放资源,先关闭写的(如果写完了,肯定读完了)
        fos.close();
        fis.close();
        long endTime = System.currentTimeMillis();
        System.out.println("文件复制共耗时:" + (endTime - startTime) + "毫秒");
    }
image.png

流的关闭原则:先开后关,后开先关。

下一篇:IO流之文件字符输入流【FileReader】https://www.jianshu.com/p/d35a45e96eef

上一篇 下一篇

猜你喜欢

热点阅读