我有Notepad++,我有一些很长的XML代码。当我在Notepad++中粘贴它时,有一行很长的代码(很难阅读和使用)。

我想知道是否有一种简单的方法使文本可读(可读是指正确的标签代码)。

我可以手动完成,但我希望有一个永久的解决方案,因为我已经多次面对这个问题。我相信有一种方法可以做到这一点,就像几年前我做过一次一样,可能是用Visual Studio或其他编辑器,我不记得了。

但是Notepad++能做到吗?


当前回答

插件->插件管理->搜索XML工具

安装XML工具插件后

选择整个XML文件内容并单击漂亮的打印

or

Ctrl+Alt+Shift+B

其他回答

“但是Notepad++能做到吗?”

如果XML无效,答案显然是“否”。我使用Tidy2和XMLTools插件尝试了Notepad++。两者都给出了类似于“遇到错误,请修复”的错误。如果你不在乎错误,那就是一个PITA。

相反,在visual studio中打开它,然后编辑->高级->格式文档。又快又漂亮。

为了获得最佳效果,您应该同时使用TextFX XML整洁和XML工具漂亮的打印。以下是方法和原因:

1.TextFX -> TextFX HTML Tidy -> Tidy: reindent XML

TextFX具有换行的优点,这是XML工具无法做到的,但它不能正确缩进这些新行。

2. XML Tools -> Pretty print (Text indent)

XML工具通过很好地缩进新换行的行来补充TextFX。

如果您的XML不完美,请尝试使用TextFX Characters插件(从插件管理器安装):

首先,找到要复制到剪贴板的“>”。然后选择所有文本,然后。。。

在主菜单上:TextFX->TextFX Edit->剪贴板字符处的孤立线。。。

这将是一个合理的工作,不是完美的,但至少是可读的。

我必须使用存储在SQL Server数据库中的XML代码来实现这一点,其中没有存储标头,只有XML主体。。。

您可以在此处找到使用Pretty Print(libXML)快速格式化XML的详细信息

安装XML工具

如果您运行Notepad++并查看Plugins菜单,您会发现XML工具不存在:

从这里下载XML工具。解压缩文件并将XMLTools.dll复制到Notepad++插件文件夹(在上面的示例中:C:\Program Files(x86)\Notepad++\plugins):重新启动Notepad++,您现在应该可以在Plugins菜单中看到XMLTools。解压缩ext_libs.zip文件,然后将解压缩的DLL复制到Notepad++安装目录(在上面的示例中:C:\Program Files(x86)\Notepad++)。重新启动Notepad++,您将最终看到正确的XML工具菜单。我使用最多的功能是“漂亮的打印(仅限XML–带换行符)”。这将使用所有适当的行距格式化任何XML片段。

UniversalIndentGUI为我完成了这项工作,如上所述正确配置后。

TextFX无法在我运行Windows XP的旧电脑上正确安装和运行。上面有各种DLL文件的手动安装说明,但我宁愿避免任何手动安装。

UniversalIndentGUI格式化了一些行,如下所示:

        <ClockStatus>1
        </ClockStatus>

我更希望:

        <ClockStatus>1</ClockStatus>

但输出仍然比一条长线好得多!