Java智慧阁 2023-02-05 16:51 采纳率: 66.7%
浏览 182
已结题

编写java代码,拷贝特定包下的文件到指定路径,禁止使用IO流读写操作

编写java代码,拷贝特定包下的文件到指定路径,禁止使用IO流读写操作,保证打包可执行jar包,可正常启动jar包
项目结构,普通的java项目工程,如下截图:

img

我的要求和代码如下:
package com.demo;

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

/**
 * 
 * 现有结构说明,com.demo包下有个Main类,以及一个dat文件,禁止使用IO流读写这个文件,会改变未知属性!!!
 *
 */
public class Main {
    public static void main(String[] args) {
        // 编写代码,实现以下要求
        /**
         * 1.将com.demo下的dat文件 移动或者拷贝一份到 C:\Program Files 目录下
         * 2.肯定是相对路径的,就是比如导出为可执行的jar包运行,放置其他电脑启动这个jar包,也是可以实现拷贝com.demo下的lic到C:\Program Files目录
         * 3.禁止使用IO流读写这个文件,会改变未知属性!!!
         */

        // 目前我的写法是,可惜无法实现上述要求,或者可尝试调用cmd的复制命令?
        Path source = Paths.get("com/demo/dat");
        Path destination = Paths.get("C:\\Program Files\\dat");
        try {
            Files.copy(source, destination);
        } catch (Exception e) {
            System.out.println("复制文件失败:" + e.getMessage());
        }
        
    }
}

我想要达到的结果:

最终导出是一个可执行的jar包,任何电脑启动,比如
java -jar run.jar包,能实现上述拷贝文件效果,即com.demo下的dat文件 移动或者拷贝一份到 C:\Program Files 目录下

  • 写回答

7条回答 默认 最新

  • SSS4362 2023-02-05 17:13
    关注

    拷贝到c盘下需要你给予权限,c盘是不能随便读写文件的,建议换一个盘试试,jar包运行又不是只能在c盘下才能运行的

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月5日
  • 创建了问题 2月5日

悬赏问题

  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥50 win10链接MySQL
  • ¥35 跳过我的世界插件ip验证
  • ¥15 抖音看过的视频,缓存在哪个文件
  • ¥15 自定义损失函数报输入参数的数目不足
  • ¥15 如果我想学习C大家有是的的资料吗
  • ¥15 根据文件名称对文件进行排序
  • ¥15 deploylinux的ubuntu系统无法成功安装使用MySQL❓
  • ¥15 有人会用py或者r画这种图吗