gpt4 book ai didi

java - 重命名 zip 文件中的文件名

转载 作者:行者123 更新时间:2023-11-29 02:57:51 26 4
gpt4 key购买 nike

尝试重命名 zip 文件中的内部文件,而无需解压缩然后以编程方式重新压缩。

例子。 test.zip包含test.txt,我想改成test.zip包含newtest.txt(test.txt改名为newtest.txt,内容不变)

遇到了这个有效的链接,但不幸的是它期望 test.txt 存在于系统上。在示例中,srcfile 应该存在于服务器上。

Blockquote Rename file in zip with zip4j

然后我在 Linux 上找到了 zipnote,它可以解决问题,但不幸的是我的版本不适用于 >4GB 的文件。

关于如何实现这一点有什么建议吗?最好在 Java 中。

最佳答案

这应该可以使用 Java 7 Zip 文件系统提供程序,例如:

// syntax defined in java.net.JarURLConnection
URI uri = URI.create("jar:file:/directoryPath/file.zip");

try (FileSystem zipfs = FileSystems.newFileSystem(uri, Collections.<String, Object>emptyMap())) {
Path sourceURI = zipfs.getPath("/pathToDirectoryInsideZip/file.txt");
Path destinationURI = zipfs.getPath("/pathToDirectoryInsideZip/renamed.txt");

Files.move(sourceURI, destinationURI);
}

关于java - 重命名 zip 文件中的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28126450/

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