ZIP 转文本:把一个归档变成一份可搜索的语料库
这个工具是为一个非常具体的时刻造的。你手上有一个归档——一次导出、一份备份、别人发来的一个 打包——里面塞着五六种格式的文档,而你真正需要的不是去读它们。你需要同时搜遍所有文件。数某个 术语出现了多少次。把整批喂给 embedding 模型。从八十个文件里找出提到某一条款的那三个。
上传 ZIP,拿回一整块扁平的纯文本,里面装着归档中所有可读的内容。没有标题,没有竖线表格, 没有语法字符——只有能 grep、能索引、能切块、能粘贴的散文。免费、不用账号、归档上限 50 MB, 拿到输出之后什么都不留。
一个归档进,一份语料出
归档会被解包,内部的目录树被完整遍历,每个扩展名受支持的文件都按它单独上传时的同一套逻辑
转换,最后全部拼接成连续的文本返回。归档内的文件夹路径会被带过来,所以你仍然分得清某段内容
来自 exports/2023/ 而不是 drafts/——但输出本身是扁平、均质、机器
好处理的。
效率账不用多算。四十份文档逐个转换是四十次上传、四十次复制粘贴。作为一次批量文件转 文本,它只是一次。而且所有东西都落在同一份输出里,事后不用再拼装——不用担心第 23 个文件贴了两遍、第 24 个漏了。
批量作业里,扁平文本为什么赢过 Markdown
Markdown 的价值在于有人要读输出,或者文档结构本身携带信息。对一整个归档一次性能做的大多数 事情来说,这两条都不成立,标记就成了纯开销:
- embedding 与 RAG 流水线。切块器处理的是散文。竖线表格和标题记号会被切块 边界劈开,稀释每个向量里的语义信号,还占用本该留给真正内容的预算。多数摄取代码的第一步 反正就是剥 Markdown——不如一开始就没有。
- 搜索索引。不管你喂的是什么系统,分词器要的都是干净的词。语法字符只是 分析器还得丢弃的噪音。
- 关键词与词频分析。词频、共现、TF-IDF、简单的正则扫描——对着不加修饰的 文本全都更干净,也不会有表格分隔符被当成 token 的风险。
- 去重与比对。比较两次归档转换的结果、看看改了什么,在格式无法制造虚假 差异的时候容易得多。
- token 效率。横跨几十份文档,结构标记累积起来会吃掉上下文窗口实实在在的 一块。扔掉它,就给更多原始材料腾出了地方。
反过来的时候就切到 ZIP 转 Markdown—— 当你需要文档之间的清晰边界、当表格和条款编号很重要、或者你自己要读结果的时候。顶部的格式 切换按钮会带着你已选好的归档一起切过去,一次上传两种输出,看哪种合适。
上传之前先弄清归档里有什么
支持的格式不管在树里哪个角落都会被转换:PDF、Word、PowerPoint、Excel、HTML、CSV、JSON、 XML、EPUB、RTF、MSG 和图片。混合格式的归档才是常态。想知道某种类型压平后的具体表现,见 PDF 转文本、 Word 转文本、 CSV 转文本,Outlook 邮件则见 MSG 转文本。
会被跳过的:视频、音频、二进制、字体,以及支持列表之外的一切。还有两种情况值得在被输出 吓到之前先知道。
- 归档内的图片不会被识别。图片文件单独上传时,里面的文字会被识别并返回。 打进 ZIP 里就不会——批量流程只记下这个文件存在,然后继续往前走。所以一包截图或扫描页 处理起来不报错,给你的却是文件名而不是图里的字。字才是重点的话,把图片抽出来,一张张走 图片转文字。
- 扫描版 PDF 同病相怜。本质是纸张照片的 PDF 里没有可提取的内嵌文本。检验 办法:在阅读器里试着选中一句话——选不中,就先做文字识别再打包。
- 嵌套归档。ZIP 里还装着 ZIP 的话,值得在上传前手动先解开一层。
扁平语料在哪些地方物有所值
- 大批量文档审阅。一份披露材料包或数据室导出,第一个问题是"这堆文件里 到底哪几个提到了我关心的东西"——而不是"把这份文档读给我听"。
- 搭建知识库。公司手册、制度和流程文档,一趟转完,作为标准答案喂进检索 系统,让助手照着它回答。
- 客服与工单导出。几个月的对话压成文本,可以跑主题分析,也可以让模型 聚出反复出现的投诉。
- 研究语料。一个文件夹的论文、报告和数据集,变成一整块文本做跨文档分析, 而不是一篇篇看。
- 迁移与内容盘点。把文档集搬去新平台之前,先转整个归档,搜一搜失效引用、 过时的产品名或重复的页面。
- 工作区导出。Slack、Notion 和 Takeout 的下载结构混乱、嵌套成灾。压平 它们,它们才变得可下手。
大小、顺序与合理的分批
50 MB 上限针对的是上传的归档,不是里面的单个文件。以文字为主的文档压缩率高,能装很多;媒体 文件压不动,会白白吃光整个额度。打包之前把视频和大图剔出去。
如果打算分块处理语料,就按文件夹拆开、每块单独打包——一个客户一个归档、一个季度一个、一个 项目一个。这既让每份输出保持在真能粘贴的大小,也让相关材料待在一起。输出下方的 token 计数器 是掌舵的数字:它立刻告诉你一批内容装不装得进模型的上下文窗口、要不要再拆,而不用等吃了亏 才知道。
要是归档里装的是源代码项目而不是文档,请改用 本地目录转换器。它给你一棵 带复选框的目录树,转换前就能剔除依赖、构建产物和锁文件——归档上传给不了这种控制。已经托管 在线上的代码更简单: GitHub 转文本转换器直接从网址干活。
常见问题
怎么把 ZIP 文件转成文本?
把归档传到上方。它会被解包,内部目录树被遍历,每个扩展名受支持的文件被转换并拼接成一整块扁平的纯文本。免费、免注册、单个归档 50 MB,什么都不存。归档内的文件夹路径会保留下来,每部分内容来自哪里一目了然。
归档里哪些文件类型会被转换?
和本站单独上传支持的十三种相同——PDF、Word、PowerPoint、Excel、HTML、CSV、JSON、XML、图片、EPUB、RTF、Outlook 邮件,以及嵌套归档。ZIP 里的其他东西会被跳过而不是当成二进制噪音倒出来,所以文档、视频和可执行文件混装的包照样能产出干净的输出。
带密码保护的归档能用吗?
不能。加密的 ZIP 在用密码解密之前没有任何可读条目,而这里也没有输密码的地方。先在本地用密码解压,再不加密地重新打包;或者干脆把本地文件夹转换器指向解压出的目录。
我的归档超过 50 MB 怎么办?
按文件夹拆开分批转换,或者干脆绕开归档:在本机解压,用本地文件夹转换器——它没有上传步骤,遍历整棵树,还能精确勾选要包含哪些文件。对大型文档转储来说,那本来就是更好的路线。
打包好的代码仓库适合用这个工具吗?
不太适合。源代码有专门的工具:GitHub 转换器和本地文件夹工具就是为这活儿造的——它们展示目录树,让你取消勾选 node_modules 和锁文件,边选边统计 token。本页面向的是文档归档,那里没有需要修剪的树。
工具箱的其余部分
不想挑页面的话, File2Txt 在一个页面上 接所有支持的格式。想把这一切背后的道理一次看完,还有一篇更长的 为 LLM 准备文件的指南。
Repo2Txt 由 v12hero 开发和维护,那是一位独立开发者,专做隐私优先的原生应用和 Web 应用。