如何在运行时从jar复制文件?

java jar runtime

40 观看

1回复

116 作者的声誉

我要将文件从项目中的src文件复制到目录中,但是当我导出到可运行的jar时,该文件不起作用。

      public static void main(String args[]) throws IOException{
        FileCopyController fpc = new FileCopyController();
        File fileSrc = new File("src/java.exe");
        File fileDest = new File("C:/Directory1/java.exe");
        fpc.copyFileUsingChannel(fileSrc, fileDest);
     }

     public  void copyFileUsingChannel(File source, File dest) throws IOException {
     InputStream is = null;
        OutputStream os = null;
        try {
            is = new FileInputStream(source);
            os = new FileOutputStream(dest);
            byte[] buffer = new byte[1024];
            int length;
            while ((length = is.read(buffer)) > 0) {
                os.write(buffer, 0, length);
            }
        } finally {
            is.close();
            os.close();
        } 
作者: Mr.Aw 的来源 发布者: 2017 年 9 月 15 日

回应 1


2

5104 作者的声誉

尝试这样的事情:

public static void main(String args[]) throws IOException
{
    final InputStrean src = getClass().getResourceAsStream("/java.exe");
    final Path dest = new File("C:/Directory1/java.exe").toPath();
    Files.copy(src, dest, StandardCopyOption.REPLACE_EXISTING);
}
作者: Usagi Miyamoto 发布者: 2017 年 9 月 15 日
32x32