博客
关于我
字节流练习:图片复制
阅读量:508 次
发布时间:2019-03-07

本文共 1311 字,大约阅读时间需要 4 分钟。

文件复制练习:一读一写

    明确:

        数据源: c:\\1.jpg
        数据的目的地: d:\\1.jpg

    文件复制的步骤:

        1.创建一个字节输入流对象,构造方法中绑定要读取的数据源
        2.创建一个字节输出流对象,构造方法中绑定要写入的目的地
        3.使用字节输入流对象中的方法read读取文件
        4.使用字节输出流中的方法write,把读取到的字节写入到目的地的文件中
        5.释放资源

package com.itheima.demo03.CopyFile;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class Demo01CopyFile {    public static void main(String[] args) throws IOException {        long s = System.currentTimeMillis();        //1.创建一个字节输入流对象,构造方法中绑定要读取的数据源        FileInputStream fis = new FileInputStream("c:\\1.jpg");        //2.创建一个字节输出流对象,构造方法中绑定要写入的目的地        FileOutputStream fos = new FileOutputStream("d:\\1.jpg");        //一次读取一个字节写入一个字节的方式        //3.使用字节输入流对象中的方法read读取文件        /*int len = 0;        while((len = fis.read())!=-1){            //4.使用字节输出流中的方法write,把读取到的字节写入到目的地的文件中            fos.write(len);        }*/        //使用数组缓冲读取多个字节,写入多个字节        byte[] bytes = new byte[1024];        //3.使用字节输入流对象中的方法read读取文件        int len = 0;//每次读取的有效字节个数        while((len = fis.read(bytes))!= -1){            //4.使用字节输出流中的方法write,把读取到的字节写入到目的地的文件中            fos.write(bytes,0,len);        }        //5.释放资源(先关写的,后关闭读的;如果写完了,肯定读取完毕了)        fos.close();        fis.close();        long e = System.currentTimeMillis();        System.out.println("复制文件共耗时:"+(e-s)+"毫秒");    }}

 

转载地址:http://rtwnz.baihongyu.com/

你可能感兴趣的文章
MySQL执行计划【explain】,看这一篇就够啦!
查看>>
Mysql执行计划字段解释
查看>>
mysql执行计划怎么看
查看>>
MySQL执行计划解读
查看>>
mysql执行顺序与索引算法
查看>>
mysql批量update优化_Mysql中,21个写SQL的好习惯,你值得拥有呀
查看>>
mysql批量update操作时出现锁表
查看>>
MYSQL批量UPDATE的两种方式
查看>>
mysql批量修改字段名(列名)
查看>>
MySQL批量插入数据遇到错误1213的解决方法
查看>>
mysql技能梳理
查看>>
MySQL报Got an error reading communication packets错
查看>>
Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
查看>>
MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
查看>>
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>
mysql报错级别_更改MySQL日志错误级别记录非法登陆(Access denied)
查看>>
Mysql报错:too many connections
查看>>
MySQL报错:无法启动MySQL服务
查看>>
mysql授权用户,创建用户名密码,授权单个数据库,授权多个数据库
查看>>