java复制一个文件到另一个目录下

import java.io.*;
//复制一个文件到另一个目录
public class testcopyfile {
    public static void main(String[] args) {
        //需要复制的文件
        File f=new File("d:/2.txt");
        //复制的文件
        File f2=new File("d:/new/"+f.getName());
        //method1(f,f2);
        method2(f,f2);
    }
    //方法一,以字节流方式
    //如果输出输入流的创建不在try()里,记得使用close()方法来关闭,否则会造成资源的浪费
    public static void method1(File f,File f2){
        try (
                FileInputStream fis=new FileInputStream(f);//创建字节输入流
                FileOutputStream fos=new FileOutputStream(f2);//创建字节输出流
        ){
        byte[] all=new byte[(int)f.length()];
        fis.read(all);//读取文件数据
        fos.write(all);//写入文件数据
        System.out.println("复制完成");
        }catch (Exception e){
            e.printStackTrace();
        }
    }
    //方法二,以字符流方式
    public static void method2(File f,File f2){
        try (
                FileReader fr=new FileReader(f);//创建字符输入流
                FileWriter fw=new FileWriter(f2)//创建字符输出流
        ){
            char[] all= new char[(int) f.length()];
            fr.read(all);//读取文件数据
            fw.write(all);//写入文件数据
            System.out.println("复制完成");
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值