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

谢谢

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


使用以下方法:

xmllint——格式


我相信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 

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

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

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

从产品页面:

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


您可以在任何Visual Studio Express产品中打开XML文件,并按Ctrl+A, Ctrl+K, Ctrl+F来获得良好的格式。

嘿,它是免费的,而且是一个工具,所以它符合这个问题。: -)


如果你使用notepad++,我建议你安装XML Tools插件。您可以美化任何XML内容(缩进和换行)或线性化它。此外,您还可以(自动)验证您的文件并对其应用XSL转换。

下载最新的压缩包,并将解压缩后的DLL复制到notepad++安装的插件目录中。另外,下载外部库并将它们复制到您的%SystemRoot%\system32\目录。


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


如果您是一名程序员,许多XML解析编程库都允许您解析XML,然后输出它——生成漂亮的打印、缩进输出是一种输出选项。


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

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


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


尝试http://prettydiff.com/算法类似于HTML Tidy,但更完整。这个程序完全是用JavaScript编写的,所以你不需要安装任何东西。


你也可以试试http://xmltoolbox.appspot.com/,这是一个在线xml格式化器。你只需要把你的xml粘贴到一个大的文本区域,然后按下“格式化xml”,它就会把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都作为“家庭项目”维护]