
package practice_java211; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Scanner; public class Copy { public static void main(String[] args) { System.out.println("Please input the source file:"); Scanner sc=new Scanner(System.in); String str1=sc.nextLine(); File f1=new File(str1);//如果已经有了文件str1,不会重建 System.out.println("Please input the aim file:"); Scanner sc1=new Scanner(System.in); String str2=sc1.nextLine(); File f2=new File(str2); String fstr; fstr=""; try{ //读文件 BufferedInputStream f1_in=new BufferedInputStream(new FileInputStream(f1)) ; byte[] f1byte=new byte[100]; String f1str; int len; while((len=f1_in.read(f1byte))>0){ f1str=new String(f1byte,0,len);//读取的byte数组数据构建字符串 fstr=fstr+f1str; } f1_in.close(); //写文件 BufferedOutputStream f2_out=new BufferedOutputStream(new FileOutputStream(f2)); f2_out.write(fstr.getBytes(),0,fstr.getBytes().length); f2_out.flush(); f2_out.close(); } catch(FileNotFoundException fnfe){ fnfe.printStackTrace(); } catch(IOException ioe){ ioe.printStackTrace(); } catch(Exception e){ e.printStackTrace(); } } }

package practice_java211; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Scanner; public class Copy { public static void main(String[] args) { System.out.println("Please input the source file:"); Scanner sc=new Scanner(System.in); String str1=sc.nextLine(); File f1=new File(str1); System.out.println("Please input the aim file:"); Scanner sc1=new Scanner(System.in); String str2=sc1.nextLine(); File f2=new File(str2); String fstr; fstr=""; try{ //读文件 FileInputStream f1_in=new FileInputStream(f1); byte[] f1byte=new byte[100]; String f1str; int len; while((len=f1_in.read(f1byte))>0){ f1str=new String(f1byte,0,len);//读取的byte数组数据构建字符串 fstr=fstr+f1str; } f1_in.close(); //写文件 FileOutputStream f2_out=new FileOutputStream(f2); f2_out.write(fstr.getBytes()); f2_out.close(); } catch(FileNotFoundException fnfe){ fnfe.printStackTrace(); } catch(IOException ioe){ ioe.printStackTrace(); } catch(Exception e){ e.printStackTrace(); } } }
下面利用在输入输出流中添加缓冲区实现文件的复制
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· 一个基于 .NET 开源免费的异地组网和内网穿透工具
· 《HelloGitHub》第 108 期
· Windows桌面应用自动更新解决方案SharpUpdater5发布
· 我的家庭实验室服务器集群硬件清单