试编程实现使用缓存数组的方法实现从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 替换为你实际的文件路径。

相关推荐
cynicme2 小时前
力扣3318——计算子数组的 x-sum I(偷懒版)
java·算法·leetcode
青云交3 小时前
Java 大视界 -- Java 大数据在智能教育学习效果评估与教学质量改进实战
java·实时分析·生成式 ai·个性化教学·智能教育·学习效果评估·教学质量改进
崎岖Qiu3 小时前
【设计模式笔记17】:单例模式1-模式分析
java·笔记·单例模式·设计模式
Lei活在当下4 小时前
【现代 Android APP 架构】09. 聊一聊依赖注入在 Android 开发中的应用
java·架构·android jetpack
ACP广源盛139246256734 小时前
(ACP广源盛)GSV6172---MIPI/LVDS 信号转换为 Type-C/DisplayPort 1.4/HDMI 2.0 并集成嵌入式 MCU
c语言·开发语言·单片机·嵌入式硬件·音视频
不穿格子的程序员4 小时前
从零开始刷算法-栈-括号匹配
java·开发语言·
lkbhua莱克瓦244 小时前
Java练习-正则表达式 1
java·笔记·正则表达式·github
yue0084 小时前
C#类继承
java·开发语言·c#
im_AMBER5 小时前
算法笔记 09
c语言·数据结构·c++·笔记·学习·算法·排序算法
明月与玄武5 小时前
前端缓存战争:回车与刷新按钮的终极对决!
前端·缓存·回车 vs 点击刷新