java io复制图片_Java:IO流,复制图片或视频等,字节流,输入,剪切文件,复制,测试效率【诗书画唱】...

本文通过Java IO流展示了如何高效地复制图片,包括读取字节流、写入字节流以及计算复制时间和字节数。案例涵盖了文件复制、剪切、读取文本文件和创建文本文件等操作,详细解释了字节流在处理不同文件类型中的应用。
摘要由CSDN通过智能技术生成

字节流可以读取任何类型的文件,因此也可以读取文本类型的文件

自己出的题,自己的深入了解和理解思考等:

复制删除(剪切)图片,设置每次读取字节长度为100,求出共读取的字节总长度,求出复制所用的时间

3fc161d62c3f66f505ed2728733311bc.png

package IO;

import java.io.*;

public class lizi4 {

public static void main(String[] args)  throws Exception{

File weJianLuJing=new File("D://集成开发工具/7.jpg");

//用FileInputStream声明读取的字节流:

FileInputStream shuRuLiu=new FileInputStream(weJianLuJing);

//用FileOutputStream声明写入的字节流:

//用XXX getName()得到XXX的名字,这里当作相对路径,这样的话,

//XXX就会复制到相对路径

FileOutputStream shuChuLiu=

new FileOutputStream(weJianLuJing . getName());

long startTime=System. currentTimeMillis() ;

//用字节数组byte[]当作容器

byte[] ziJieShuZu=new byte [100];

//这里的100表示每次读取的字节的长度

int xiaBiaoLength;

//xiaBiaoLength:下标的长度,就是数组长度

int ziJieZongChangDu=0;

int count=0;

while((xiaBiaoLength=shuRuLiu.read(ziJieShuZu))!=-1){

System. out . println("这次读取的字节长度:"+xiaBiaoLength);

count++;

ziJieZongChangDu=ziJieZongChangDu+xiaBiaoLength;

//下面会写出下标0到xiaBiaoLength-1(含头含尾)的字节

shuChuLiu.write(ziJieShuZu,0,xiaBiaoLength) ;

shuChuLiu. flush();

}

System. out . println("读取的文件的字节总长度:"

+ziJieZongChangDu);

System. out . println("读取文件的次数:"

+count+"次");

long endTime=System. currentTimeMillis();

System. out . println("复制花费的时间为"

+(endTime-startTime)+"毫秒");

shuChuLiu. close();shuRuLiu.close();

weJianLuJing .delete();

//读的同时要进行写入。

}

//newFileLuJing:新的文件路径

//oldFileLuJing:旧的文件路径

//public static void fuZhiFangFa(String oldFileLuJing , String

//newFileLuJing)throws Exception{

//File oldWenJian=new File(oldFileLuJing);

//if(oldWenJian.exists()){

wenJianDuQuDaoDeNeiRong:

文件读取到的内容

//FileReader wenJianDuQuDaoDeNeiRong=new FileReader(oldWenJian);

//String wenJianName=oldWenJian . getName();

//File NewWenjian=new File (newFileLuJing, wenJianName) ;

wenJianXieLuDeNeiRong:文件写入的内容

//FileWriter wenJianXieLuDeNeiRong

//=new FileWriter(NewWenjian);

//char[] ziJieShuZu=new char[30];

//int ziJieShuZuLength;

//while((ziJieShuZuLength=

//wenJianDuQuDaoDeNeiRong .read(ziJieShuZu))!=-1){

//wenJianXieLuDeNeiRong .

//write(new String(ziJieShuZu,0,ziJieShuZuLength));

//wenJianXieLuDeNei

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值