是否有一种免费的XML格式化(缩进)工具,我可以在其中跳过XML字符串并对其进行格式化,以便正确地读取XML文档?

谢谢

编辑~我在Windows XP上使用XML记事本。


当前回答

高级常规格式[更新]

XMLSpectrum是一个开源语法高亮器。支持XML—但具有XSLT 2.0、XSD 1.1和XPath 2.0的特殊特性。我在这里提到这一点是因为它还具有XML的特殊格式化功能:它垂直对齐属性及其内容和元素——以增强XML的可读性。

输出HTML适合在浏览器中查看,如果XML需要进一步编辑,可以将其复制并粘贴到您选择的XML编辑器中

因为xmlspectrum。xsl使用它自己的XML文本解析器,像实体引用和CDATA节这样的所有内容都被保留——就像在编辑器中一样。

注意使用方法:这只是一个XSLT 2.0样式表,因此需要将所需的命令行(提供了示例)包含在一个小脚本中,以便自动转换XML源文件。

虚拟格式化

XMLQuire是一个免费的XML编辑器,具有特殊的格式化功能——它正确地格式化XML,包括多行属性、属性值、换行缩进甚至XML注释。

所有XML缩进都是在不插入制表符或空格的情况下完成的,确保了XML的完整性。对于XP以后的Windows版本,不需要安装,它只是一个3MB的。exe文件。

如果需要打印格式化的XML,打印预览中有一些特殊选项,比如缩进后的行编号。如果需要将格式化的XML作为富文本复制到文字处理器,也可以使用这种方法。

[披露:我将XMLQuire和XMLSpectrum都作为“家庭项目”维护]

其他回答

Firstobject为Windows提供的免费XML编辑器foxe是一个很棒的工具。

打开或粘贴XML到其中,然后按F8缩进(您可能需要设置缩进空格的数量,因为它可能默认为0)。

它看起来很简单,但是它包含一个用c++编写的自定义XML解析器,这使它能够轻松高效地处理非常大的XML文件(不像我使用过的一些昂贵的“间谍”相关工具)。

从产品页面:

第一个对象XML编辑器的完整Visual c++源代码 (包括CDataEdit千兆字节的MFC编辑控件组件) 作为高级CMarkup开发者许可的一部分。它允许 开发人员实现自定义XML处理函数,如 验证、转换、美化和报告 目的。

我相信notepad++有这个功能。

编辑(适用于较新版本) 安装“XML工具”插件(菜单插件,插件管理器) 然后运行:菜单插件,Xml工具,漂亮打印(仅Xml -带有换行符)

原来的答案(适用于旧版本的notepad++)

notepad++菜单:TextFX -> HTML Tidy -> Tidy: Reindent XML

然而,这个特性包装了xml,使它看起来“不干净”。 没有包裹,

打开C:\Program Files\ notepad++ \plugins\Config\tidy\TIDYCFG.INI, 找到条目[Tidy: Reindent XML]并添加wrap:0,使它看起来像这样:

[Tidy: Reindent XML] 
input-xml: yes 
indent:yes 
wrap:0 

notepad++ dit好,只有当你在ANSI。 如果你使用类似“ANSI AS UTF8”的格式,请清理文档:/。

在notepad++中重新缩进XML的另一个方法:

从菜单中选择插件-> XML工具->漂亮打印(仅限XML -带换行符) 或按Ctrl+Alt+Shift+B。

这不是一个直接的答案,但还是值得知道:在缩进之后,请确保随后处理格式化XML的解析器和应用程序不会产生不同的结果。在XML中,空格通常很重要,大多数符合规范的解析器都会将空白填充到应用程序中。