Java 文件复制练习,使用输入输出流,将一个文件从一个目录复制到另一个目录...

本文详细介绍了一种使用Java的FileInputStream和FileOutputStream进行文件复制的方法。通过循环读取源文件的每个字节并将其写入目标文件,实现了文件的完整复制。文章提供了完整的代码示例,包括异常处理和资源关闭。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

|--需求说明

|--实现方式

使用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 }
程序入口

 

 

|--运行结果

 

 

 

转载于:https://www.cnblogs.com/twuxian/p/11287384.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值