You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows系统中如何向ZIP压缩包添加顶级空目录

Windows系统中如何向ZIP压缩包添加顶级空目录

嘿,这个问题我之前也碰到过!Windows自带的压缩功能确实有点“挑剔”——嵌套的空文件夹能正常添加,但顶级空文件夹就会弹出报错:

指定的目录为空,因此无法将其添加到存档中。
Windows无法将一个或多个空目录添加到压缩(zipped)文件夹。

别担心,给你几个简单的解决办法,挑适合你的来用:

方法一:临时加个空文件(小白友好)

这是最直观的办法,不需要敲命令:

  • 打开那个要添加的空顶级文件夹
  • 右键新建一个空的文本文档(随便起个名,比如temp.txt就行)
  • 现在文件夹不再是空的了,直接把它拖进压缩包
  • 压缩完成后,打开压缩包找到那个临时文件,右键删掉它——压缩包里就留下了空的顶级文件夹啦

方法二:用PowerShell快速搞定(高效批量)

如果经常需要处理这类需求,用命令行更方便:

  • 按下Win+X,选「Windows PowerShell」或者「终端」(Win11)
  • 把下面的命令里的路径换成你自己的,直接执行:
    # 示例:把C盘的MyEmptyFolder空文件夹压缩成C盘的MyArchive.zip
    Compress-Archive -Path "C:\MyEmptyFolder\" -DestinationPath "C:\MyArchive.zip" -Force
    
    👉 注意!路径末尾的反斜杠\一定要加上,它告诉PowerShell要压缩文件夹本身,而不是里面的内容。执行完你就会发现空文件夹已经乖乖待在压缩包里了。

方法三:CMD调用.NET类(进阶玩法)

如果你习惯用CMD,也可以这么操作:

  • 打开CMD,切换到你要放压缩包的目录
  • 先创建一个空zip文件(如果还没有的话):
    echo. > EmptyArchive.zip
    
  • 然后执行下面的命令,替换成你的空文件夹路径和想要在压缩包里显示的名称:
    powershell -Command "Add-Type -AssemblyName System.IO.Compression.FileSystem; $zip = [System.IO.Compression.ZipFile]::Open('EmptyArchive.zip', 'Update'); [System.IO.Compression.ZipFileExtensions]::CreateEntryFromFile($zip, 'C:\MyEmptyFolder', 'MyEmptyFolder'); $zip.Dispose()"
    

备注:内容来源于stack exchange,提问作者Pluto

火山引擎 最新活动