为了账号安全,请及时绑定邮箱和手机立即绑定

IO-多次复制文件为不同的名字

标签:
Java

代码需求:复制图片名称是abc.jpg 第一次复制为abc.jpg 第二次abc-1.jpg 第三次abc-2.jpg...

package com.java;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class abcCopy {
    //目标文件的绝对路径
    String file;
    public void copy(int j) throws IOException{
        //for循环表示多次复制,j为复制的次数
        for(int i=0;i<j;i++){
            //第一次复制
            if(i==0){
                file="E:\\abc.jpg";
            }else{
                StringBuffer sb=new StringBuffer("E:\\abc.jpg");
                sb.insert(6, '-');
                sb.insert(7, i);
                file=sb.toString();
            }       
            //输入流每次都一样
            BufferedInputStream bis=new BufferedInputStream(new FileInputStream("abc.jpg"));
            //输出流里面的目标文件路径在变化
            BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream(file));      
            byte bytes[]=new byte[1024];
            int d=0;
            while((d=bis.read(bytes))!=-1){
                bos.write(bytes, 0, d);
                bos.flush();
            }
            bis.close();
            bos.close();
        }
    }
    public static void main(String[] args) throws IOException {
        abcCopy test=new abcCopy();
        test.copy(5);
    }
}
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
9
获赞与收藏
227

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消