【发布时间】:2023-06-08 08:46:02
【问题描述】:
我找到了很多关于如何从 .zip 中提取 所有 文件的示例,但我不知道如何在不遍历 .zip 文件中的所有文件的情况下提取单个文件.
是否可以在 Go 中从 .zip 存档中提取单个文件而不遍历 .zip 文件中的所有文件?
例如,如果一个 zip 文件包含:
folder1/file1.txt
folder1/file2.txt
folder1/file3.txt
folder2/file1.txt
如何只提取folder2/file1.txt?
【问题讨论】:
-
是的,有可能。你试过什么?你在哪里卡住了?请包括您的尝试,瞄准minimal reproducible example。
-
我正在使用 ExampleReader 函数并添加了文件名检查,如果文件名与
folder2/file1.txt匹配,则会中断循环。我需要知道的是如何在没有循环的情况下获取文件句柄。 -
zip.Reader为您提供存档的内容,文件作为切片。没有通过名称获取文件的辅助方法,您必须使用循环遍历文件。您不需要打开/提取文件,但要按名称查找文件,您必须使用循环。使用循环有什么问题?