在线XML工具,提供五项操作:支持制表符或2/3/4空格缩进的美化、压缩、定位到解析器停止行的验证、把文档绘制成可折叠的树形图,以及将XML转换为JSON、XSD、DTD或18种编程语言的类对象。所有操作都在浏览器内完成,你粘贴的文档不会上传。
如何使用
粘贴 XML,或打开文件
你可以在输入框里键入或粘贴,也可以从本机打开一个 .xml 文件。文件在浏览器内读取,不会上传。
选择一种操作
格式化、压缩、树形图、验证,或数据转类对象。格式化提供制表符或 2/3/4 个空格;数据转类对象提供 22 种目标,从 JSON、XSD 到 18 种语言的类定义。
执行操作,然后复制、打印或保存
点按钮执行操作,结果会显示在右侧,你可以复制、打印,或把它保存为 .xml 文件、源文件,树形图下还可以保存为 PNG。
XML格式化/美化
把拥挤的或由机器生成的 XML 重新排版成易读、缩进一致的标记。缩进可选制表符或 2、3、4 个空格;属性顺序、注释和 XML 声明都会保留。可一键复制、打印,或把结果保存为 .xml 文件。
缩进
2空格缩进
3空格缩进
4空格缩进
一键复制格式化内容
打印格式化内容
保存格式化内容为 .xml 文件
XML压缩器/紧凑化工具
压缩标签之间的空白,生成紧凑的文档,可以减小 SOAP 报文、配置文件和站点地图的传输体积。文本内容内部的空白不会被动到,元素值压缩后保持原样。
一键复制紧凑内容
打印紧凑内容
保存紧凑内容为 .xml 文件
XML验证器(检查XML语法)
检查文档是否为格式良好的 XML:标签是否闭合、嵌套是否正确、属性是否加引号、有无非法字符。出错时,报告会给出解析器停止的行号和列号,并把完整输入重新打印出来,带上行号,同时标出出错的那一行。
XML树形图
把文档绘制成可折叠的树形图,每个元素一个节点,属性和文本值显示在叶子上。点击任意节点即可折叠或展开它的子节点。整棵树可以保存为 PNG、发送到打印机,或作为图片复制到剪贴板。
一眼看清深层嵌套结构
折叠分支,只关注某一棵子树
把树形图导出为 PNG 用于文档
数据转类对象(把XML转换为类对象)
支持的XML转换类型:
XML转JSON
XML转JSON Schema
XML转DTD
XML转XSD
XML转Java
XML转Python
XML转Objective-C
XML转Swift
XML转C#
XML转Go
XML转Rust
XML转Crystal
XML转C++
XML转TypeScript
XML转JavaScript PropTypes
XML转Flow
XML转Kotlin
XML转Elm
XML转Ruby
XML转Dart
XML转Pike
XML转Haskell
一键复制生成的代码
打印生成的代码
把生成的代码保存为源文件
其他功能
可转换为JSON、JSON Schema、DTD、XSD,以及 Java、C#、TypeScript、Go、Rust、Swift 等 18 种编程语言的类定义。生成的 schema 只是起点,不是最终契约:部分目标语言把每个标量都声明为字符串,JSON Schema 的输出会把每个字段都标成必填,所以在依赖结果之前请先检查。全部功能都在浏览器内运行,免费使用,转换次数不限。
常见问题
- 我的 XML 看起来没问题,为什么验证不通过?
- 格式良好的要求是严格的。一个未闭合的标签、缺失的结束标签、没有转义的 & 符号,或文本里一个裸露的尖括号,都会让解析器停下来。属性值必须加引号,即使它是数字。验证器会报告解析停止的行和列,那个位置通常在真正出错的地方之后。
- 我的 XML 会被上传到服务器吗?
- 不会。格式化、压缩、验证、树形图渲染和所有转换都是以 JavaScript 在你的浏览器内完成的。文档不会离开你的机器,所以这个工具可以放心用于包含内部数据的配置文件和报文。
- 树形图有什么用?
- 它把元素层级画成图,而不是文本。深层嵌套的配置或 SOAP 响应这样看容易得多,折叠一个分支,就能忽略除你关心的那棵子树以外的一切。这张图可以保存为 PNG、打印,或作为图片复制。
- 我能从 XML 生成 schema 或类吗?
- 可以。数据转类对象会读取文档的结构,输出 XSD、DTD、JSON Schema,或 18 种语言之一的类定义。元素名会变成类名和字段名,嵌套元素会变成嵌套类型。请把输出当作初稿:命名规范和可空性都是推测,而 Ruby、Dart 和 Haskell 这三个目标会把每个值都声明为字符串。
