打开ZIP文件
查看压缩包里的内容,只取出您真正需要的文件。ZIP绝不会被存储,所以就算是您不愿交给网站的文件,也可以放心使用。
- 绝不存储
- 无需排队,无需等待
- 无需注册,无水印
使用方法
添加ZIP文件
拖放进来,或从设备中选择。文件不会被发送到任何地方——就在它所在的位置读取。
查看内容
在解压任何内容之前,每个文件都会连同大小和所在文件夹一起列出。ZIP自带一份可以单独读取的目录,所以大压缩包也能瞬间列出。
取出所需文件
下载单个文件,或把全部内容打包成一个新的ZIP一次性取走。只有您要的内容才会真正被解压。
能取出什么,不能取出什么
ZIP格式的压缩方式中,这里能读取两种——存储(stored)和deflate——几乎所有流通中的.zip都在这两种之内。但格式允许的并不只有这两种。7-Zip和WinZip都可以生成条目采用LZMA、bzip2、PPMd或zstd压缩的.zip,这样的文件在这里能完整列出,每个名称和大小都正确,但会拒绝解压,并注明它发现的压缩方式编号。这是本阅读器的限制,并不是您的压缩包有问题,用桌面解压软件可以直接打开。
文件名是ZIP另一个没有看上去那么确定的地方。该格式只用一个标志位来记录文件名是否为UTF-8,而旧版Windows工具生成的压缩包并不会设置它。缺少这个标志时,文件名能按UTF-8读取就按UTF-8读取,否则按Windows-1252读取——这样所有ASCII名称都完全正确,但日文名称或DOS时代的带重音字母的名称会变成乱码。文件本身完好无损,只是名字显示错了,下载后重命名一下即可。
一次性取出全部内容时,这里会生成一个新的ZIP,而不是把您提供的那个原样交还。条目会重新用deflate压缩,本身已压缩的格式除外,它们按原样存储;原文件的修改日期会一并保留,并限制在ZIP能表示的范围内,即1980年至2099年;文件名会标记为UTF-8,以便带重音字母的名称在macOS和Linux上解压后不出错。权限不会保留,因为根本不会读取——这里不会查看条目的unix模式。ZIP中的符号链接也不会被识别为链接,而是以它实际的样子——一个包含所指向路径的小文件——被取出。
拒绝解压的标准背后都有具体数字,值得直接列出来,而不是泛泛描述。条目上限50,000个;单个文件上限1 GB;整个压缩包合计上限2 GB;压缩比检查只有在某个内容膨胀超过100 MB且超过一千倍时才会启动,因此压缩效果极好的普通文本压缩包绝不会被误判为攻击。大小在解压任何内容之前就按目录计入,这意味着目录中的虚假信息会让解压停止,而不是让标签页崩溃。
如果您需要的是别的
这里的一切最终都是一次下载,这决定了它适合做什么。文件会逐个保存到浏览器的下载位置,没有文件夹结构;取出全部内容会得到另一个ZIP,还得在本地再解压一次,而这一来一回,您自己的操作系统完全可以省掉——当前所有Windows、macOS和Linux桌面系统都能直接打开ZIP,无需安装任何软件。当压缩包在某个不方便的地方,或者您想在决定之前先看看里面有什么时,再用这个页面,而不是拿它代替双击文件。
有几种形式根本无法识别,会以“不是压缩包”而不是“缺少某项功能”的方式失败。分卷压缩包——.z01及其同组文件,或.part1.rar——不会被合并:只会打开您拖放进来的那个文件,其余数据在您没有拖放的那些文件里。自解压.exe是一个内含压缩包的程序,这里不会将其识别为压缩包。嵌套的压缩包也不会被递归解压;.zip里的.tar取出来仍是.tar。这三种情况7-Zip都能处理,而且它是免费的。
常见问题
我的ZIP会被存储在什么地方吗?
不会。不存储任何文件,也不保留任何内容;页面加载完成后,即使关掉Wi-Fi也照样能用。对压缩包来说这一点比大多数文件更重要——装着报税资料的压缩包、某个文件夹的备份,正是不该交给陌生人服务器的东西。
它能打开哪些格式?
ZIP、TAR、TAR.GZ和TGZ、GZ、RAR(RAR4和RAR5都支持)以及7z。文件是按其内部内容而不是扩展名来识别的,所以即使压缩包被人改了名,也照样能打开。
能打开有密码的ZIP吗?
它能显示里面有什么——ZIP中的文件名和大小并不加密,这一点本身就值得了解——但无法读取内容。ZIP加密分两种,较新的那种(AES)没有我们能在宽松许可证下使用的浏览器原生实现。页面会明确告诉您哪些文件被加密锁定,而不是给您一堆乱码。
有大小限制吗?
取决于可用内存,而不是固定的大小上限。在格式允许的情况下,超大压缩包会一次只打开一个文件,所以大ZIP能瞬间列出,只有您要的那个文件才会被解压。
打开陌生人发来的压缩包安全吗?
压缩包是唯一一种“内容”本身可能带有恶意的文件,所以在您看到任何东西之前,两种老式攻击就已经被处理掉了。压缩包里的文件可以被命名为“../../something”,企图逃出解压目标文件夹——这类名称会被限制在文件夹内,并告诉您哪些名称被改动过。压缩包也可能只有几KB,解压后却有数TB,足以让浏览器标签页崩溃;这种情况会先被测算出来并直接拒绝,而不是硬着头皮去解压。
为什么有些文件名和压缩包里写的不一样?
因为压缩包里的名称并不总是电脑可以安全使用的名称。任何企图用“../”爬出所在文件夹的名称、绝对路径、Windows盘符、像CON这样的系统保留设备名,或用来伪装扩展名的不可见字符,都会被纠正——而且每一处纠正都会列出,您可以清楚看到改了什么、为什么改。
提示说我的文件不是ZIP,可它的扩展名明明是.zip
那它几乎肯定不是ZIP。文件常被改名以绕过邮件过滤,被命名为“.zip”的RAR或7z很常见。页面会读取文件开头的几个字节,告诉您它实际是什么格式——如果是我们能打开的格式,就直接打开。
小贴士: 这里无法打开加密的条目——也从不会要求您输入密码。这些条目仍会连同名称和大小一起列出,因为ZIP的文件目录本身不加密;无法读取的只是内容,而且会用挂锁图标标出,不会悄无声息地失败。解压时超大压缩包会整个放在内存中,因此在手机上处理数GB的ZIP会很吃力。
把这个工具放到您的网站上
博客、课程页面或帮助文章均可免费使用。粘贴一段代码,访客就能直接在您的页面上使用。