如何在Notepad ++中重新格式化JSON?

How to reformat JSON in Notepad++?

提问人:Donny V. 提问时间:10/13/2009 最后编辑:Ola StrömDonny V. 更新时间:9/21/2023 访问量:1444868

问:

我需要Notepad ++从中获取json字符串

{"menu": {"id": "file","value": "File","popup": {"menuitem": [{"value": "New", "onclick": "CreateNewDoc()"},{"value": "Open", "onclick": "OpenDoc()"},{"value": "Close", "onclick": "CloseDoc()"}]}}}

对此...

{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}

我环顾了所有 TextFX 选项,但找不到任何有效的选项。

JSON 解析 记事本++

评论

0赞 Henke 1/18/2021
对于 32 位版本,请参阅 stackoverflow.com/a/65762242

答:

-11赞 Cody Caughlan 11/20/2009 #1

我知道你问过NotePad ++,但OS X的TextMate可以通过JSON捆绑包来做到这一点,它被称为“重新格式化文档”命令。

43赞 JRL 11/20/2009 #2

Notepad++ 的通用缩进 GUI 插件会将您的示例转换为:

{
    "menu" : {
        "id" : "file", "value" : "File", "popup" : {
            "menuitem" : [ {
                "value" : "New", "onclick" : "CreateNewDoc()";
            }
            , {
                "value" : "Open", "onclick" : "OpenDoc()";
            }
            , {
                "value" : "Close", "onclick" : "CloseDoc()";
            }
            ];
        }
    }
}

评论

0赞 Anthony Shaw 12/19/2009
不幸的是,这不适用于最新的 Unicode 版本的 Notepad++ 5.5
62赞 Dan Atkinson 3/1/2010 #3

我个人使用 JSON 查看器,因为 Notepad++ 插件不再起作用。

编辑 - 2012年5月24日

我建议您下载记事本的 JSMin 插件,如答案中所述。这在最新版本(撰写本文时为 v6.1.2)中对我来说效果很好。

编辑 - 2017年11月7日

根据 @danday74 在下面的评论,JSMin 现在是 JSToolNpp。另外,请注意,JSON 查看器工具位于 Codeplex 上,该工具可能会在不久的将来消失。

鉴于上述情况,这个答案不再相关,你应该改用 Dan H 的答案。我的答案只是为了后代。

评论

1赞 aliopi 4/20/2017
当我这样做时,它会起作用,然后Plugins -> JSMin -> JSMin (New File)JSFormat
1赞 Dan Atkinson 11/7/2017
@danday74谢谢!我已经相应地修改了答案。
1赞 Andrew Cowenhoven 12/8/2017
JSON 查看器在插件管理器中提供的 np++ 版本 7.5.1 上工作正常。
2赞 Adam Porad 12/11/2018
@DanAtkinson 感谢您及时更新您的答案。我很高兴知道老问题的答案没有过时。:)
1赞 Chris 1/3/2020
仍在 NotePad++ v7.8.2 Json viewer v1.34.0.0 上运行
2赞 Richard Lloyd 3/10/2010 #4

它在最新版本中使用 UniversalIndentGui 对我的记事本有用。

我所做的是在插件设置下选择启用文本自动更新,弹出一个窗口,我选择了javascript。

-10赞 Brett McLaughlin 7/9/2010 #5

最好的办法是使用最新版本的Eclipse(我使用的是Eclipse Galileo J2EE和Eclipse Ganymede J2EE)。创建一个 JavaScript 文件,然后创建一个变量:

var jsonObject = {"menu": {"id": "file","value": "File","popup": {"menuitem": [{"value": "New", "onclick": "CreateNewDoc()"},{"value": "Open", "onclick": "OpenDoc()"},{"value": "Close", "onclick": "CloseDoc()"}]}}};

最后,点击++,瞧!你有一个很好的缩进 JSON 对象。我也在寻找Notepad++ JSON格式化程序,而且我很可能被迫在未来很短的时间内开发一个Npp插件。CTRLSHIFTF

评论

1赞 Sergey OCHKIN 6/6/2016
如果有 Visual Studio,只需将 json 文本粘贴到新文件中,它就会自动格式化。
0赞 shA.t 9/10/2017
我也在寻找Notepad++ JSON格式化程序,如果您有同样的问题,请不要添加这样的答案,并保持;)干净。
6赞 Millhouse 8/24/2010 #6

这不是 NPP 解决方案,但在紧要关头,您可以使用此在线 JSON 格式化程序,然后将格式化文本粘贴到 NPP 中,然后选择 Javascript 作为语言。

评论

1赞 galaktor 10/19/2012
@Brent.Longborough:谢谢你的小建议!JS 突出显示具有奇怪的灰色背景,python 突出显示在眼睛上要容易得多。
2赞 C.M. 11/12/2019
在线 json 格式化程序很好,但有时您不想冒险通过 Internet 发送您正在格式化的数据。
1赞 Ahmed Magdy 11/20/2010 #7

如果您没有 Notepad++,您可以使用 http://www.jsonlint.com/ 在线编辑。json

评论

2赞 Kenneth K. 7/16/2015
直接从 N++?(-1)
0赞 CodeToLife 7/19/2018
点赞。由于其 32 位版本,该插件未被接受后,此链接很有用。
0赞 Mbotet 1/30/2020
点赞。即使不是通过记事本,也可以提供正确的解决方案。
0赞 Henke 1/18/2021
对于 32 位版本,我建议看看 stackoverflow.com/a/65762242
5赞 SUN 1/11/2011 #8

JSMinNpp 插件将完成这项工作。https://sourceforge.net/projects/jsminnpp/

4赞 Siva 1/20/2011 #9

以下 Notepad++ 插件按照“SUN”的建议为我工作 https://sourceforge.net/projects/jsminnpp/

1720赞 Dan H 2/23/2011 #10

更新:

从 Notepad++ v7.6 开始,根据此答案使用 Plugin Admin 安装 JSTool

安装

http://sourceforge.net/projects/jsminnpp/ 下载并将 JSMinNpp.dll 复制到 Notepad++ 的插件目录下。或者你可以从Notepad++的插件管理器安装“JSTool”。

新的Notepad++安装,PluginManager去哪儿了?请参阅如何在 Notepad++ 中查看插件管理器

{
  "menu" : {
    "id" : "file",
    "value" : "File",
    "popup" : {
      "menuitem" : [{
      "value" : "New",
          "onclick" : "CreateNewDoc()"
        }, {
          "value" : "Open",
          "onclick" : "OpenDoc()"
        }, {
          "value" : "Close",
          "onclick" : "CloseDoc()"
        }
      ]
    }
  }
}

enter image description here提示:选择要重新格式化的代码,然后选择插件 |JSTool 公司 |JSFormat 中。

评论

137赞 Mike Henry 9/15/2013
现在似乎被列为 JSTool
6赞 smile.al.d.way 5/14/2014
谢谢。我检查了。我最终使用了 JSONViewer,因为它可以格式化 JSON 数据,而不仅仅是以嵌套树格式查看它。
15赞 prograde 11/27/2014
JSTool 还可以格式化 JSON 数据。只需按 Ctrl-Alt-M 组合键即可。我现在尝试了一些插件,我发现这是最好的一个。
15赞 Dib 2/24/2016
这可以直接从 Notepad++ 中内置的“插件管理器”安装。转到“插件>插件管理器>显示插件管理器>可用选项卡”
6赞 brentlightsey 8/15/2017
64 位版本可直接从此处下载:notepad-plus-plus.org/community/topic/13064/...
2赞 DevBezz 3/31/2011 #11

记事本 5.8.7 和 jsmin 1.7.0.0 在这里效果很好。

不过要小心,发现 jsmin 很难吃评论(应该先阅读)。

2赞 Stonetip 3/23/2012 #12

我正在使用 NPP 5.9 的 JSON 查看器插件,它似乎运行良好。

2赞 Josh 1/21/2014 #13

我知道这个线程很旧,但我最近遇到了 JSToolNPP 与我新更新的 N++ 不兼容的问题,我确实找到了一个似乎有效的替代品。http://sourceforge.net/projects/nppjsonviewer/

使用风险自负,ofc。(链接SExchange之外的任何内容时,我的标准免责声明,仅供参考)

234赞 DevMJ 5/17/2018 #14

您需要一个插件来格式化 JSON。要安装插件,请执行以下步骤:

  1. 打开记事本++ -> ALT+P ->插件管理器 -> 选择JSON 查看器 -> 单击 安装
  2. 重新启动记事本++
  3. 现在您可以使用快捷方式将 json 格式化为 CTRL + ALT +SHIFT + M 或 ALT+P ->插件管理器 -> JSON 查看器 -> 格式化 JSON

enter image description here

评论

4赞 Stefan 11/12/2020
这种格式算法不健壮,经常失败,JSTool(参见 ibr 的答案)要健壮得多。
1赞 Victor Zakharov 2/1/2022
@Stefan我可以确认。JSTool 能够解析 Serilog (.NET Core 6) 的日志结构化输出。
0赞 Jason Geiger 9/2/2022
注意:它现在被称为“Plugins Admin...”而不是“Plugins Manager”
3赞 Esko Piirainen 8/27/2018 #15

如果您不想安装 Notepad++ 插件,但您有 Firefox 和 Firefox 的 JSON 插件,您可以选择 .您可以使用Firefox插件获取格式化为JSON的内容。Run -> Launch in Firefox

这是我个人所做的。

9赞 ibr 2/11/2019 #16

只需转到此链接下载dll 将 DLL 复制并粘贴到 Notepad++ 的 Plugins 文件夹中,重新启动 Notepad++,它应该显示在列表中\Notepad++\plugins

jsformatter

注意:此 dll 支持 64 位 notepade++

4赞 olliaroa 3/27/2019 #17

您现在可以在Notepad ++中查看,没有问题(也许旧版本被窃听了?

对于 Win64: 您可以在此处找到最新的插件: https://github.com/kapilratnani/JSON-Viewer/releases .最新的 zip 文件包含一个 .dll 文件。

然后按照 github priject README 说明进行操作:

  1. 将文件“NPPJSONViewer.dll”粘贴到Notepad ++插件文件夹
  2. 打开包含 JSON 字符串的文档
  3. 选择 JSON 片段并导航到 plugins/JSON Viewer/show JSON Viewer 或按“Ctrl+Alt+Shift+J”
  4. 瞧!!如果 JSON 有效,它将显示在 Treeview 中

win32 的过程应该相同,但我无法亲自验证。

273赞 Hardik Leuwa 5/10/2019 #18

对于 Notepad++ v.7.6 及更高版本,可以使用插件管理...

  1. 打开菜单插件 > 插件管理...

  2. 搜索 JSON 查看器

  3. 检查列表中的 JSON 查看器

  4. 单击“安装”按钮

  5. 重新启动 Notepad++

  6. 选择 JSON 文本

  7. 转到插件 > JSON 查看器 > 格式化 JSON ( Ctrl + Alt + Shift + M

我们可以使用 Plugins Admin 安装任何 Notepad++ 支持的插件...

评论

6赞 Yashwin Munsadwala 5/16/2019
这是一个非常简单的技术。谢谢。我只想添加,以便在安装插件后格式化,需要 1) 选择 JSON 对象 2) 转到插件 ** 3)**JSON 查看器手风琴 4) 最后,格式化 JSON只需按 Cntrl + Shift + Alt + M
7赞 Michael Tuchman 11/2/2019
plugins > Plugins admin 在当前版本中不再起作用。
1赞 Hardik Leuwa 11/2/2019
@Michael Tuchman,我可以知道哪个版本的插件>插件管理员吗?不工作?
1赞 Hardik Leuwa 11/2/2019
我有测试插件>插件管理员...通过JSON Viewer在最新版本的Notepad++ v7.8中,它工作正常
1赞 Hardik Leuwa 11/7/2019
@Michael Tuchman,我已经测试了 Plugins Admin。在记事本++ 7.6.6(64位)中,由这个相同的JSON示例提出问题。并且它工作正常。
6赞 User0106 6/21/2019 #19

如果格式化 JSON 是主要目标,并且您拥有 VisualStudio,那么它既简单又容易。

  1. 打开 Visual Studio
  2. 文件 -> 新建 -> 文件
  3. 在左侧面板中选择 Web
  4. 选择“JSON”
  5. 复制粘贴原始 JSON 值
  6. 按 Ctrl + K 和 Ctrl + D

就是这样。您将获得格式化的 JSON 值。

评论

7赞 Toto 6/21/2019
问题是关于Notepad ++的
1赞 User0106 6/24/2019
我正在搜索格式JSON值的工具,并找到了这个链接。后来我发现了Visual Studio步骤。对于正在寻找格式化 JSON 值的人来说,它可能很有用。
0赞 C.M. 11/12/2019
我通常求助于使用它,因为我的开发人员环境从合同重置为联系人。我只是将其粘贴到任何 .json 中,全选,复制,然后撤消。
34赞 Arvind Chourasiya 9/4/2020 #20

根据最新的更新答案。加notepad++JSON Viewer Plugin

打开转到 --> 单击notepad++PluginsPlugins Admin..

enter image description here

在窗口中搜索并单击“安装”Plugins AdminJSON Viewer

enter image description here

安装插件后新增,这是您可以查看JSON格式文件的方法

enter image description here

2赞 jslmsca 9/25/2020 #21

对于我们这些在公司防火墙后面无法直接访问互联网的人来说,使用插件管理员是行不通的。要使用 JSMinNpp 插件,您不能只是“将 dll 复制到 plugins 文件夹”。它需要位于插件文件夹内名为“JSMinNpp”的文件夹中。这样做并重新启动 Notepad++ 后,我能够在插件菜单下看到“JSTool”菜单选项。

使用 Notepad++ 7.8.2 和 7.8.9 进行测试。

1赞 Henke 1/17/2021 #22

我使用 32 位 Notepad++ 版本 7.5.6。我发现 32 位 JSToolNpp 1.20.0 做得很好。
直接链接是:
https://sourceforge.net/projects/jsminnpp/ 重定向的 https://sourceforge.net/projects/jsminnpp/files/Uni/JSToolNPP.1.2006.0.uni.32.zip/download

病毒总链接:
https://www.virustotal.com/gui/file/008ee0ce889dfd9e96b975cebe6faafe28bc350352e951f3dec97e8e5bec5a07

JSON-Viewer也可以正常工作,但无法对JSON数据进行排序。

9赞 Nitin Lawande 3/4/2021 #23

为 notepad++ 添加 JSON 查看器插件的步骤:

  1. sourceforge 下载记事本 ++ 的 JSON 查看器插件。
  2. NPPJSONViewer.dll 复制到 Notepad++\plugins\NPPJSONViewer 文件夹中
  3. 重新启动记事本++
  4. 选择 JSON,然后单击 JSON 查看器>插件>格式 JSON (CTRL+ALT+SHIFT+M)。
  5. 做。

评论

0赞 Sagar 2/15/2022
Notepad++说插件与64位版本的记事本不兼容,我们有64位插件吗?
0赞 Ankush Madankar 6/16/2022
您可以从 github.com/kapilratnani/JSON-Viewer/releases 下载它
3赞 Azzabi Haythem 6/1/2023 #24

您可以使用 Notepad++ 使用 Plugin AdminJSTool 格式化 Json,但对于那些无法安装此插件的人,他们可以使用 Postman 来美化 json,如下所示:

enter image description here