图像getResource打包在itextpdf中时返回FileNotFound

时间:2019-02-08 08:28:17

标签: java itext getresource

我有一个应用程序,可以将资源文件夹中的图像加载到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文件,该图像存在于路径中。

请帮助我,如果我需要添加更多信息,请提出建议。

0 个答案:

没有答案