试编程实现使用缓存数组的方法实现从C盘根目录复制文件a.jpg到E盘根目录

java 复制代码
import java.io.*;

public class FileCopier {
    private static final int BUFFER_SIZE = 4096;
    
    public static void main(String[] args) {
        String sourcePath = "C:\\a.jpg";  // 源文件路径
        String destinationPath = "E:\\";  // 目标文件夹路径
        
        copyFile(sourcePath, destinationPath);
        
        System.out.println("文件复制完成。");
    }
    
    public static void copyFile(String sourcePath, String destinationPath) {
        try (InputStream inputStream = new FileInputStream(sourcePath);
             OutputStream outputStream = new FileOutputStream(destinationPath + "a.jpg")) {
             
            byte[] buffer = new byte[BUFFER_SIZE];
            int bytesRead;
            
            while ((bytesRead = inputStream.read(buffer)) != -1) {
                outputStream.write(buffer, 0, bytesRead);
            }
            
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在上面的示例中,我们定义了常量 BUFFER_SIZE,用于设置缓存数组的大小。我们创建了一个 FileInputStream 来读取源文件,创建了一个 FileOutputStream 来写入目标文件。通过不断从输入流读取数据并将其写入输出流,实现了文件的复制。最后,我们将源文件路径和目标文件夹路径传递给 copyFile 方法来执行文件复制操作。

请注意,在示例中我们使用了 try-with-resources 语句来自动关闭输入流和输出流,以确保资源被正确释放。

记得将 sourcePath 和 destinationPath 替换为你实际的文件路径。

相关推荐
wangchunyu1142 小时前
JAVA JVM内存结构与运行时数据区
java·开发语言·jvm
光锥智能3 小时前
海康机器人举行2026移动机器人新品发布会:箱式存拣升级,「明智」系列发布
java·前端·机器人
行思理3 小时前
Nginx 跨站请求(CORS)配置完全指南:从原理到生产实践
java·前端·nginx
小溪学编程3 小时前
Spring @Bean 与 @Component 注解的区别详解
java·后端·spring
Wang's Blog3 小时前
Java 项目实战: 交友项目 - 圈子互动章总结与自检清单
java·bootstrap·交友
xyouyuweizhu4 小时前
字节流与字符流:Java IO 的两条主线该怎么选
java·开发语言·python
代码方舟4 小时前
零信任架构实战:基于天远人企关联构建自动化供应链核心企业关联穿透与利益冲突审查网关
java·人工智能·架构·自动化
liyi_hz20085 小时前
O2OA(翱途) V10.1 即将发布|功能再升级,安全再加固,协同更高效!
java·javascript·windows·开源软件
骑着蜗牛撵大象3275 小时前
AI Agent 工程化开发实战(三):用 StateGraph 给智能体搭一条可回放的状态流水线
java·开发语言·jvm·ai·状态管理·langgraph·stategraph
鬼手点金6 小时前
KV Cache 未必是一次性的:可编辑、可组合的“笔记”
java·人工智能·笔记·学习·自动化·1024程序员节