试编程实现使用缓存数组的方法实现从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 语句来自动关闭输入流和输出流,以确保资源被正确释放。

记得将 sourcePathdestinationPath 替换为你实际的文件路径。

相关推荐
程途知微3 分钟前
ConcurrentHashMap线程安全实现原理全解析
java·后端
Mars酱9 分钟前
1分钟编写贪吃蛇 | JSnake贪吃蛇单机版
java·后端·开源
devpotato10 分钟前
人工智能(四)- Function Calling 核心原理与实战
java·人工智能
默 语17 分钟前
Records、Sealed Classes这些新特性:Java真的变简单了吗?
java·开发语言·python
zjshuster26 分钟前
墨西哥中央银行网联清算系统接入总结
java·财务对账
小锋java123427 分钟前
SpringBoot 4 + Spring Security 7 + Vue3 前后端分离项目设计最佳实践
java·vue.js·spring boot
一 乐27 分钟前
校园线上招聘|基于springboot + vue校园线上招聘系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·校园线上招聘系统
不懂的浪漫30 分钟前
mqtt-plus 架构解析(四):MqttMessageInterceptor 的扩展点设计
java·spring boot·物联网·mqtt
西海天际蔚蓝31 分钟前
AI配合写的第一个demo系统页面
java·人工智能
小旭95271 小时前
Spring Security 实现权限控制(认证 + 授权全流程)
java·后端·spring