gpt4 book ai didi

使用 jxl.write.WritableImage 图像文件位于 jar 内时出现 java.io.FileNotFoundException

转载 作者:行者123 更新时间:2023-11-30 03:32:41 26 4
gpt4 key购买 nike

我正在使用 WritableImage 将图像写入 xls 文件,当我在 eclipse 中运行它时,它工作正常。但是当我在可执行 jar 中运行它时,我收到 FileNotFoundException。

WritableImage image = new WritableImage(0.0D, 0.0D,
1.0D, 3.0D,
new File(getClass().getResource("/img/abouts.png").getPath()));

图像确实在 jar 里。 C:\scheduler-1.0-SNAPSHOT-jar-with-dependency.jar\img\abouts.png

异常(exception)情况如下:

java.io.FileNotFoundException: file:C:<some directory>scheduler-1.0-SNAPSHOT-jar-with-dependencies.jar!/scheduler.jar!/img/abouts.png (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at jxl.biff.drawing.Drawing.getImageBytes(Drawing.java:778)
at jxl.biff.drawing.BlipStoreEntry.<init>(BlipStoreEntry.java:98)
at jxl.biff.drawing.DrawingGroup.write(DrawingGroup.java:427)
at jxl.write.biff.WritableWorkbookImpl.write(WritableWorkbookImpl.java:931)
at com.flagpole.client.IndividualCabinSched.<init>(IndividualCabinSched.java:218)
at com.flagpole.client.Reports.getIndividualCabinScheReport(Reports.java:948)
at com.flagpole.client.Reports.actionPerformed(Reports.java:652)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2028)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2351)

最佳答案

一旦图像成为 jar,它就是 File 无法访问它。通常我们会使用接受 URL 的方法调用或构造函数,但所使用的 API 不支持这一点。

因此您可以使用 new WritableImage(double,double,double,double,byte[])其中 byte[] 是图像的字节。

关于使用 jxl.write.WritableImage 图像文件位于 jar 内时出现 java.io.FileNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28655155/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com