|--需求说明
|--实现方式
使用FileInputStream 和 FileOutputStream 完成,详情见代码注释
|--代码内容
1 package cn.copy; 2 3 import java.io.FileInputStream; 4 import java.io.FileNotFoundException; 5 import java.io.FileOutputStream; 6 import java.io.IOException; 7 8 /** 9 * @auther::9527 10 * @Description: 复制的方法 11 * @program: shi_yong 12 * @create: 2019-08-02 10:37 13 */ 14 public class CopyWay { 15 public void copy(String str_in,String str_out){ 16 17 FileInputStream fis = null; 18 FileOutputStream fos = null; 19 20 try { 21 fis = new FileInputStream(str_in); 22 fos = new FileOutputStream(str_out); 23 //定义一个整型的num,用于接收每一次读取到的byte 24 int num = -1; 25 //循环读取 26 while ((num = fis.read())!=-1){ 27 //循环储存 28 fos.write(num); 29 } 30 System.out.println("文件复制完毕,请打开对应目录查看"); 31 } catch (FileNotFoundException e) { 32 e.printStackTrace(); 33 } catch (IOException e) { 34 e.printStackTrace(); 35 }finally { 36 try { 37 //先关闭输出,再关闭输入 38 fos.close(); 39 fis.close(); 40 } catch (IOException e) { 41 e.printStackTrace(); 42 } 43 } 44 } 45 }
1 package cn.copy; 2 3 import java.util.Scanner; 4 5 /** 6 * @auther::9527 7 * @Description: 赋值文件的程序入口 8 * @program: shi_yong 9 * @create: 2019-08-02 10:48 10 */ 11 public class CopyTest { 12 public static void main(String[] args) { 13 CopyWay copyWay = new CopyWay(); 14 Scanner scanner = new Scanner(System.in); 15 System.out.println("请输入要被复制的文件名及路径"); 16 String str_in = scanner.next(); 17 System.out.println("请输入要文件要复制的目的名及目的路径"); 18 String str_out = scanner.next(); 19 copyWay.copy(str_in,str_out); 20 } 21 }
|--运行结果