我有一个应用程序,可以将资源文件夹中的图像加载到pdf文件中。我正在使用
使用itextpdf创建此pdf文件getClassLoader().getResource(filePath);
String path =url.getPath();
String[] split = path.split("/");
int k = 2;
path = split[k-1] + "\\";
for(;k<split.length-1;k++)
{
path = path + getStringWithoutSpace(split[k]) + "\\";
}
path = path + split[k];
com.itextpdf.text.Image img = null;
try {
img = com.itextpdf.text.Image.getInstance(path);
} catch (BadElementException | IOException e) {
log.error("Exception in getting diagnosis image: " + e);
}
getStringWithoutSpace()
是
private String getStringWithoutSpace(String str)
{
StringBuilder stringBuilder = new StringBuilder();
if(str.contains("%20"))
{
int i = 0;
String[] split = str.split("%20");
for(i = 0;i<split.length - 1;i++)
{
stringBuilder.append(split[i]);
stringBuilder.append(" ");
}
stringBuilder.append(split[i]);
}
else
stringBuilder.append(str);
return stringBuilder.toString();
}
当我通过编辑器运行时,图像会正确加载,但是打包时会出现java.io.FileNotFoundException (The system cannot find the path specified)
异常
打包图像后,我还检查了jar文件,该图像存在于路径中。
请帮助我,如果我需要添加更多信息,请提出建议。