这个工具做什么
把 CSV 表格转成 XML:首行表头自动变成标签名,每一行数据变成一个 <row> 元素,整份输出包在 <rows> 根元素里。老系统只收 XML 报文、要给某个接口喂批量数据时,这步不用再手写模板。
解析遵循 RFC 4180:引号内的逗号与换行按数据处理,两个连续引号转义为一个引号——所以「Doe, John」这样的名字不会被逗号拆散。分隔符自动识别逗号、分号与制表符,也可以手动指定。
如何使用
- 第一步:粘贴表格 直接从 Excel / 表格软件复制粘贴,或粘贴 .csv 文件内容。首行是否是表头用开关告诉工具。
- 第二步:确认分隔符 默认自动识别——按首行中出现次数最多的分隔符判断。欧洲常用的分号分隔与 Tab 分隔都能正确处理;识别错了再手动指定。
- 第三步:生成并复制 输出默认带缩进便于阅读,关掉格式化则输出单行(体积更小)。特殊字符一律转义,产物可以被任何 XML 解析器读取。
限制与边界
CSV 是平面的,输出也是平面的 <row> 列表——不做嵌套结构、不做 DTD / XSD、不提供 CDATA 选项。数据行缺列补空、多列丢弃(以表头宽度为准),这是刻意的宽容策略:先保证能转,缺列的语义由人工确认。
常见问题
表头里有中文或空格会怎样?
非法字符替换为下划线:my col 变成 my_col,空表头得到 column1 等占位名。重名自动加序号(my_col、my_col_2),保证每个标签唯一。
字段里有逗号会拆错吗?
不会,只要字段按 CSV 规范用双引号包裹("Doe, John")。引号内的逗号与换行按数据处理;如果源文件没加引号,那就是格式本身不合规,解析按普通逗号拆分处理。
支持没有表头的 CSV 吗?
支持。关掉「首行是表头」,列名自动变成 column1、column2……所有行都作为数据处理。
数据行比表头多几列怎么办?
以表头宽度为准:缺列补空字段,多余列丢弃。这是刻意的宽容策略——保证能转出完整 XML,语义上的取舍由你确认。
支持 7z / Excel 的 .xlsx 直接转换吗?
不支持。xlsx 请先用站内「XLSX 转 CSV」转成 CSV,7z 解压属后续批次。本工具专注 CSV → XML 这一段。
表格数据会被上传吗?
不会。解析与生成都在浏览器内完成,页面不发送包含表格内容的请求——这也是很多内部报表只能走本地工具的原因。