在带有未指定标记的 ExifTool 输出中包含重复项

Including duplicates in ExifTool output with Unspecified Tag

我正在尝试在 Java 中复制以下命令,以捕获 zip 中某些文件的文件名。

ExifTool.exe -a -ZipFileName C:\Users\Name\Downloads\file.zip

这给出了以下输出

Zip File Name                   : Scheme02_V1.tiff
Zip File Name                   : SupplementaryMaterialFigures_V1.docx
Zip File Name                   : SupplementaryMaterialTables_V1.docx

为了使用 mjeanroy java 库执行此操作,我创建了一个新的 UnspecifiedTag,以检索 zip 文件名。

UnspecifiedTag zipFileNameTag = new UnspecifiedTag(ZIP_FILE_NAME);

除了包含用于重复的“-a”标记的新执行策略。

但是,这似乎只从 zip 文件中捕获了 1 个文档。

Map<Tag, String> zipFileNameMap =
                    tool.getImageMeta(tempFile, tagList);
zipFileNameMap.forEach((k, v) -> System.out.println((k + ":" + v)));

UnspecifiedTag{name: "ZipFileName"}:SupplementaryMaterialTables_V1.docx

documentation 中它提到在解析时,它 returns 一个 String[],但是如果我尝试制作映射 Map<Tag, String[]> 它会失败。

发生的事情是地图中的重复项被覆盖了。为了解决这个问题,我创建了几个方法的一些助手 类,使 Map<String, Tag> 现在正在将所有文件添加到地图中。