把重复的 XML 记录变成 CSV 表格,列取所有字段的并集,属性可选,分隔符自定,按 RFC 4180 转义,浏览器本地
- 本地处理
- 分类 格式转换
- 适合 把粘贴内容或本地文件转成更适合交付的格式。
这个工具能做什么
免费在线 XML 转 CSV 工具。粘进一段有重复元素的 XML(比如成排的 `<record>`、`<item>`、`<book>`),右边立刻出 CSV:一条记录一行,记录里 每个子元素一列。工具会自动认出重复的那个元素当行,把所有记录的字段 取并集当表头,某条记录缺哪个字段就在那列留空,所以源数据参差不齐时 各行也对得齐,不会错列。元素上的属性可以选择带出来,作为单独的列, 前面加 `@` 前缀和子元素区分开。列分隔符可以在逗号、分号、Tab、竖线 之间换;每个字段都按 RFC 4180 转义,含逗号、引号或换行的值会自动加 双引号、内部引号翻倍,导进表格永远不串行。结果一键复制,或下载成 .csv 直接拖进 Excel、Numbers、Google Sheets。全部在浏览器标签页里 运算,不上传,不记录。
工具细节
- 输入
- 文本 + 数值 + 结构化内容
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制 + 下载
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 9 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 格式转换 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
XML 转 CSV 适合怎么用
适合把内容从一种实际格式转成另一种可用格式。
适合转换的任务
- 把粘贴内容或本地文件转成更适合交付的格式。
- 放进大流程前,先预览转换结果是否可靠。
- 修正常见格式不匹配,不用打开完整编辑器。
转换检查项
- 源格式比较乱时,先拿一小段试转。
- 转换后检查编码、分隔符和换行符。
- 结果确认前保留原始内容。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
把 XML 数据源转成表格发给同事
供应商发来一份 XML 商品数据源,里面有几百个 `<product>` 元素, 商品运营的同事想要 Google Sheets 版本。粘进数据源,工具认出 `<product>` 当行,每个 `<sku>`、`<name>`、`<price>` 变成一列。 个别多带了 `<promo>` 标签的商品也会归到同一列,其余行留空。下载 .csv 拖进 Sheets,不用写脚本,也不用再开一条"能帮我导一下吗"。
把接口的 XML 响应平铺出来快速看数据
一个老的 SOAP 或 REST 接口返回的是 XML 而不是 JSON,你只想把记录 摆成表格扫一眼。把响应体粘进来,重复的结果元素变成行,嵌套字段 展开成带点的列名,比如 `customer.region`。两秒钟你就有一张能排序、 能筛选的网格,不用在一堆尖括号里来回滚动,对比几条记录的几个字段。
把老系统的 XML 导出搬进数据库导入
你正从一个只能导出 XML 的系统迁出,新工具吃的是 CSV。把 `<record>` 列表转成 CSV,并打开包含属性,这样存成 `id="..."` 的主键就会变成 一个 `@id` 列带过来。选导入工具认的分隔符,数据里逗号多就用 Tab 或竖线;RFC 4180 转义会保证字段里夹的逗号或引号在导入时不串列。
用样例 XML 造一个 CSV 测试夹具
你在测一段吃 CSV 的代码,而手上已经有真实源系统给的等价 XML 样例。 粘进来,选你的解析器用的分隔符,把输出直接复制进夹具文件。因为 转义遵循 RFC 4180,像 `he said "hi", ok` 这样的值会被正确加引号, 测试跑的是真实边界情况,而不是洗干净的玩具数据。
常见踩坑
指望根元素变成一行。根是容器,不是记录。工具取的是父节点下重复的元素,所以一个 `<catalog>` 包着许多 `<item>`,得到的是一行行 item,而不是一行 catalog。如果有好几个元素都在重复,自动识别可能猜错,这时自己填记录元素名把它定死。
真实数据在属性里却忘了打开属性。很多数据源把关键字段存成属性,比如 `<item sku="A1" qty="3"/>`,几乎没有子元素文本。关着「包含属性」,这些行导出来几乎是空的。勾上它,你就拿到 `@sku` 和 `@qty` 两列,带着真实的值。
粘了格式不合法的 XML 还怪工具不出东西。一个没闭合的标签、一个落单的 `&`、或嵌套对不上,都会让解析器拒绝整份文档;工具会带着行号给出解析错误,而不是瞎猜。先把标记改对,或者先过一遍 XML 格式化工具,再来转换。
隐私说明
解析 XML(浏览器原生 DOMParser)、识别记录元素、取列并集、按 RFC 4180 转义、序列化 CSV,全部是在你标签页里跑的纯 JavaScript。数据不出页面、 不打日志,.csv 下载是用 Blob 在内存里生成的,所以不上传,也不向任何 服务器往返。唯一要留意的是分享链接:它只在输入较短时把内容写进 query string,更大的负载留在本地。涉及敏感 XML(比如客户记录、内部导出)时, 请手动复制 CSV 而不是分享链接,因为 URL 会进浏览器历史,也会留在收件 方的服务器日志里。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。