如何在Notepad++中格式化XML?

我有记事本++,我得到了一些很长的XML代码。当我将其粘贴到Notepad++中时,有一长行代码(难以阅读和使用)。

我想知道是否有一种简单的方法使文本可读(通过可读,我的意思是正确的选项卡式代码)。

我可以手动完成,但我想要一个永久的解决方案,因为我已经多次遇到过这个问题。我相信有一种方法可以做到这一点,因为我在几年前做过一次,也许用Visual Studio或其他编辑器,我不记得了。

但是Notepad++能做到吗?

1873818 次浏览

尝试TextFX→TextFX Html Tidy→Tidy: reindent XML

如果您不能尝试使用Eclipse,请执行右键、源代码和正确的缩进。

尝试插件->XML工具->漂亮的打印(libXML)或(仅限XML-使用换行符Ctrl+Alt+Shift+B

您可能需要使用插件管理器安装XML Tools才能在菜单中获取此选项。

根据我的经验,libXML提供了很好的输出,但前提是文件格式100%正确。

在Notepad++中没有像TextFX这样的东西,至少在最新版本中没有。这是我仍然使用DreamWeaver的原因之一,即使它时不时地缓慢和无反应让我发疯…

您需要从插件菜单项→插件管理员…出现插件管理对话框安装XML工具,然后滚动到可用插件的底部并检查XML工具,安装它,然后Ctrl+Alt+Shift+B或上面显示的XML工具选项。

为了获得最佳效果,您应该使用两者 TextFX XML tidy XML工具漂亮打印。以下是如何以及为什么:

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

TextFX具有包装长行的好处,XML Tools不这样做,但它不会正确缩进这些新行。

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

XML Tools通过很好地缩进新包装的行来补充TextFX。

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

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

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

好的,这是我在Notepad++中做到的:

  • 插件
  • 插件管理器
  • 显示插件管理器
  • 检查XML工具
  • 安装
  • 重新启动记事本++
  • 打开XML文件
  • 插件
  • xml工具
  • 漂亮的打印(仅限XML-带换行符)

插件->XML工具->漂亮的打印(libXML)或Ctrl+Alt+Shift+B

您可能需要安装插件:

插件>插件管理器>显示插件管理器

如果您在代理后面,请从这里下载它。

然后将XMLTools.dll复制到插件目录和外部库(四个dll)到根Notepad++目录中。

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

首先,找到一个">"复制到剪贴板。然后选择所有文本,然后……

在主菜单上:TextFX->TextFX编辑->剪贴板字符处的Solit行…

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

我必须使用存储在SQL服务器数据库中的XML代码来执行此操作,其中没有存储标头,只有XML主体……

带有插件“XML Tools”和快捷方式Ctrl+Alt+Shift+B的Notepad++v6.6.3工作正常。

以下是您可以在Notepad++中使用的大多数插件来格式化XML代码。

  • UniversalIndentGUI通用类型
    (推荐这个)

在插件管理器中启用“文本自动更新”->UniversalIndentGUI
快捷键=CTRL+ALT+SHIFT+J

  • TextFX
    (这是大多数用户使用的工具)

快捷键=CTRL+ALT+SHIFT+B

  • xml工具
    (XML自定义插件)

快捷键=CTRL+ALT+SHIFT+B

UniversalIndentGUI通用类型为我做了工作,一旦如上所述正确配置

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

UniversalIndentGUI通用类型格式化了一些行,如下所示:

        <ClockStatus>1</ClockStatus>

我宁愿:

        <ClockStatus>1</ClockStatus>

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

您可以找到详细信息这里使用漂亮打印(libXML)快速格式化XML

安装XML工具

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

  1. 从这里下载XML工具

  2. 解压缩文件并将XMLTools.dll复制到Notepad++plugins文件夹(在上面的示例中:C:\Program Files(x86)\Notepad++\plugins):

  3. 重新启动Notepad++,您现在应该看到XMLTools出现在插件菜单中。

  4. 解压缩ext_libs.zip文件,然后将解压缩的DLL复制到Notepad++安装目录(在上面的示例中:C:\Program Files(x86)\Notepad++)。

  5. 重新启动Notepad++,您最终应该会看到正确的XML Tools菜单。

  6. 我最常用的特性是“漂亮的打印(仅限XML-带换行符)”。这将使用所有正确的行距格式化任何XML片段。

Step 1: Install XML Tools pluginStep 2: Format ....completed

在此处输入图片描述

如果您遇到此错误:

Notepad++错误:无法加载32位插件

无法加载32位插件,XMLTools.dll与当前版本的Notepad++不兼容

在这里您可以找到适用于Windows 10 x64的工作版本:Xml工具2.4.9.2Unicode

注意:这是我在Windows 10专业版x64上找到的唯一版本。

因为我看到很多关于人们对插件有问题的评论,我想我会提到我使用的工作。

我只是使用其中一个在线站点进行XML查看(我使用https://codebeautify.org/xmlviewer,但那里有很多),如下所示:

  1. 将XML内容粘贴到输入窗口中
  2. 点击“美化/格式化”按钮
  3. 从结果窗口复制格式化的XML输出
  4. 粘贴到记事本++

我不知道它是否有资格准确地回答OP的问题,但对于任何有插件问题的人来说,这是非常简单和容易的。

所有前面的答案都没有定义如何在Notepad++安装中添加插件管理器。

这是为那些没有在插件选项卡中看到插件管理器的人准备的

从此链接下载插件管理器-这是为64位插件管理器。下载插件管理器后,粘贴到插件文件夹中。这是我的插件文件夹位置:C:\Program Files\Notepad++\plugins

在此处输入图片描述

粘贴. dll文件后,重新启动Notepad++。现在您可以安装任何插件。要安装插件,请单击插件选项卡,然后转到插件管理器并选择您想要的插件。

你不能,假设你没有安装插件的权限。但你可能已经或可以获得Eclipse(Visual Studio也可以这样做)。

Ctrl+N(新文件)→(选择XML文件)→(粘贴您的XML内容)→Ctrl+Shift+K(格式)

如果您想格式化JSON NotePad++,可以默认使用Ctrl+Alt+m来执行此操作

Windows 10上最新版本的Notepad++x64 v7.6.2已经将插件管理器移至“Plugins Admin”。

旧版本的Notepad++和插件管理器将无法工作。

自从第一次提出这个问题以来,XML工具的位置略有变化。

我目前正在使用记事本++v7.8.6

新位置是:

  • 插件选项卡
  • 插件管理员…
  • 出现Plugins Admin对话框,默认为可用插件选项卡
  • 滚动到底部并选中XML Tools复选框
  • 单击对话框右上角的安装按钮

这将在安装时关闭Notepad++,然后自动重新启动它。

然后有几个键盘快捷键来美化XML:

  • 漂亮的打印:Ctrl+Shift+Alt+B
  • 漂亮打印(缩进属性):Ctrl+Shift+Alt+一个

要查看更多XML工具选项:

  • 插件选项卡
  • XML工具选项

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

安装XML工具插件后

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

Ctrl+Alt+Shift+B