写一个方法进行文件的复制

java中实现文件内的复制,需要新建文件的方法:

File file=new File("wubin.txt");

并且没有这个文件,那么需要将这个文件,创造出来:

file.createNewFile();

当然也可以直接在文件流里面直接创造:

FileInputStream  fis=new FileInputStream(“wubin.txt”);

意思是在本目录下创建一个wubin.txt的文件,之后创造一个inputstreamreader去获取内容,再通过一个缓冲的bufferreader去做一个速度的优化:

                      InputStreamReader isr=new InputStreamReader(fis);

BufferedReader br=new BufferedReader(isr);

最后用br的read方法读取。

那如果我们要将读取到的内容给到一个新的文件,就是说创造一个文件,将文件file里面的内容给到新的文件:

                     FileOutputStream fos=new FileOutputStream(“wubin1.txt”);

OutputStreamWriter opw=new OutputStreamWriter(fos);

BufferedWriter bw=new BufferedWriter(opw);

最后用bw的write方法写进去。

问题来了,负责一个文件还可以,如果是多个文件进行负责,很繁琐,且麻烦,

于是自己写了一个copy的方法,来使的这样的操作简便话,定义一个新的类,在该类中,定义一个新的方法copy{}:

class copa{

public void copy(File file,File file1,String s1,String s2) {

           try {

file=new File(s1);

file.createNewFile();

file1=new File(s2);

file1.createNewFile();

} catch (IOException e2) {

e2.printStackTrace();

}

     try {

     

     

FileInputStream fis=new FileInputStream(file);

InputStreamReader isr=new InputStreamReader(fis);

BufferedReader br= new BufferedReader(isr);

//shangmians 读出,下面是写入

FileOutputStream fos=new FileOutputStream(file1);

OutputStreamWriter opw=new OutputStreamWriter(fos);

BufferedWriter bw=new BufferedWriter(opw);

char[] b=new char[100];

try {

br.read(b);

// System.out.println(b);

} catch (IOException e) {

e.printStackTrace();

}

            try {

bw.write(new String(b));

} catch (IOException e1) {

e1.printStackTrace();

}

try {

bw.close();

br.close();

isr.close();

fis.close();

} catch (IOException e) {

e.printStackTrace();

}

} catch (FileNotFoundException e) {

e.printStackTrace();

}

     

}

}

新手进行了一下探索,新建方法copy,定义了两个文件夹file,file1,定义了两个文件名为:s1,s2

在main方法中进行调用:

        File file=new File("");

        File file3=new File("");

       copa copa=new copa();

       copa.copy(file, file3,"jixixin.txt","chengxia.txt");

       System.out.println("成功创建");

这样之后,就会进行成功的复制,实现了一个封装的方法,使文件的复制简单化。

转载于:https://my.oschina.net/u/2334649/blog/393325

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值