gpt4 book ai didi

java - TrueZip 无法从存档中提取文件

转载 作者:行者123 更新时间:2023-11-30 07:58:12 25 4
gpt4 key购买 nike

我正在创建一个 java 应用程序,它将提取 Powerpoint (PPTX) 文档中嵌入的缩略图。由于 pptx 文件是 zip 存档,因此我尝试使用 TrueZip 来获取存档内找到的缩略图。不幸的是,每当我尝试运行我的应用程序时,它都会抛出 IOException ,指出文件丢失 C:\Users\test-user\Desktop\DocumentsTest\Hello.pptx\docProps\thumbnail.jpeg (missing file)

下面是我用来获取缩略图的代码:

public Boolean GetThumbPPTX(String inFile, String outFile)
{
try
{
TFile srcFile = new TFile(inFile, "docProps\\thumbnail.jpeg");
TFile dstFile = new TFile(outFile);

if(dstFile.exists())
dstFile.delete();

srcFile.toNonArchiveFile().cp_rp(dstFile);

return dstFile.exists();

} catch (IOException ex) {
Logger.getLogger(DocumentThumbGenerator.class.getName()).log(Level.SEVERE, null, ex);
}

return false;
}

其中inFile是pptx文件的绝对路径,outFile是将缩略图复制到的路径。我可以验证存档内部确实有一个缩略图,位于相同的路径中。

有人可以帮忙吗?

最佳答案

我刚刚找到了答案。看来我没有正确配置 Zip 驱动程序。我将其添加到我的类构造函数中,现在一切正常:

TConfig.get().setArchiveDetector(new TArchiveDetector(
TArchiveDetector.NULL,
new Object[][] {
{ "zip|pptx", new ZipDriver(IOPoolLocator.SINGLETON)},
}));

关于java - TrueZip 无法从存档中提取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32346086/

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