为其他系统生成Java程序

时间:2017-09-01 10:49:04

标签: java excel

我整个夏天都在为一家公司制作一个Java程序,它已接近完成。作为一个新手程序员,我从来没有使用我创建的文件生成在其他系统上使用的程序。我的程序使用Apache Poi读取和写入Excel,目前使用的Excel文件位于程序指定的特定目录中。该程序还使用位于代码指定的目录中的一些图像。

如何让这个程序在其他系统上运行?是否有可能让程序在另一个系统上“安装”时创建一个Excel文档?

目前我正在使用Eclipse,系统是Windows 7。

1 个答案:

答案 0 :(得分:0)

您可以将应用程序打包到.jar中,实际上是一个包含内部.class文件和资源文件的zip文件。可以使用getClass().getResource("path/x.png")getResourceAsStream来处理这些资源文件,例如您的图片。路径是包相对或绝对的:" /abc/def.jpg"。

这些资源必须是只读的(因为它们位于.jar中)。但是,您可以将Excel 模板存储为资源,并将其复制到用户的目录中。

System.getProperty("user.home") 

将提供用户可以将资源复制到的目录。

Path appWorkspace = Paths.get(System.getProperty("user.home"), "myapp");
Files.createDirectories(appWorkspace);
Path xlsx = appWorkspace.resolve("untitled.xlsx");
Files.copy(getClass().getResourceAsStream("/data/empty.xlsx"),
    xlsx);