编写java代码,拷贝特定包下的文件到指定路径,禁止使用IO流读写操作,保证打包可执行jar包,可正常启动jar包
项目结构,普通的java项目工程,如下截图:
我的要求和代码如下:
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 目录下