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


947

我需要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选项,但找不到任何有效的方法。

Answers:


1306

更新:

从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()"
        }
      ]
    }
  }
}

在此处输入图片说明 提示:选择要重新格式化的代码,然后选择“插件” JSTool | JSFormat。


112
似乎现在被列为JSTool
Mike Henry

5
谢谢。我检查了。我最终使用了JSONViewer,因为它可以格式化JSON数据,而不仅仅是以嵌套树格式查看。
smile.al.d.way

11
JSTool还可以格式化JSON数据。只需按Ctrl-Alt-M。我现在尝试了一些插件,发现这是最好的插件。
2014年

13
可以直接从Notepad ++中的内置“插件管理器”中安装。转到“插件>插件管理器>显示插件管理器>可用选项卡”
Dib 2016年

3
可以直接从此处下载64位版本:notepad-plus-plus.org/community/topic/13064/…–
brentlightsey

71

对于记事本++ v.7.6及以上的插件管理...可用。

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

  2. 搜索JSON查看器

  3. 在列表中检查JSON Viewer

  4. 点击安装按钮

  5. 重新启动记事本++

  6. 选择JSON文本

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

我们可以使用Plugins Admin安装任何受记事本支持的插件...


3
这是一种非常简单的技术。谢谢。我只想添加以安装插件后进行格式化,这需要1)选择 JSON对象2)转到插件** 3)** JSON Viewer手风琴4)最后,格式化JSON 按下Cntrl + Shift + Alt + M
Yashwin Munsadwala,

3
插件>插件管理在当前版本中不再起作用。
Michael Tuchman

@Michael Tuchman,我可以知道哪个版本的Plugins> Plugins Admin ...不起作用?
Hardik Leuwa

我在最新版本的Notepad ++ v7.8中通过JSON Viewer测试了Plugins> Plugins Admin ...,并且可以正常工作
Hardik Leuwa

@Hardik Leuwa:7.6.6(64位)
迈克尔塔奇曼

56

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

编辑-2012年5月24日

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

编辑-2017年11月7日

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

鉴于上述情况,这个答案不再是相关的,你应该使用丹轰的答案,而不是。我的回答只是为了后代。


1
它在我运行时起作用Plugins -> JSMin -> JSMin (New File) ,然后JSFormat
aliopi

1
@ danday74谢谢!我已经相应地修改了答案。
Dan Atkinson

1
JSON Viewer可以在插件管理器中提供的np ++ 7.5.1版上正常工作。
安德鲁·科文霍芬

2
@DanAtkinson感谢您不断更新您的答案。我很高兴知道对旧问题的答案还没有过时。:)
亚当·波拉德

1
仍在NotePad ++ v7.8.2 Json查看器v1.34.0.0上工作
哈利

39

用于Notepad ++的Universal Indent GUI插件将使您的示例变为:

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

不幸的是,这不适用于最新的Unicode版本的Notepad ++ 5.5
Anthony Shaw 2009年

10

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

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

在此处输入图片说明


1
真?图片哪个主要是空的?:-/
Betlista '19

图片上传不正确
Mbotet

6

这不是NPP解决方案,但可以在紧急情况下使用此在线JSON Formatter,然后将格式化后的文本粘贴到NPP中,然后选择Javascript作为语言。


1
@ Brent.Longborough感谢您的建议!JS突出显示具有怪异的灰色背景,Python突出显示在眼睛上要容易得多。
galaktor 2012年

在线json格式化程序很好,但是有时您不希望冒着通过Internet发送正在格式化的数据的风​​险。
CM


4

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

jsformatter

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



2

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

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

而已。您将获得格式化的JSON值。


5
问题是关于Notepad ++的
Toto

我正在搜索格式JSON值的工具,并找到了此链接。后来我找到了Visual Studio步骤。对于正在格式化JSON值的人来说,这可能很有用。
User0106

我通常会使用此方法,因为我的开发人员环境已从合同重置为联系方式。我只是将其粘贴到任何.json文件中,全选,复制然后撤消即可。
CM

1

它使用UniversalIndentGui在最新版本的记事本中为我工作。

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


1

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

但是要小心,发现jsmin很难吃注释(应该先阅读)。


1

我正在将JSON Viewer插件与NPP 5.9一起使用,它似乎运行良好。


1

我知道这个线程很旧,但是最近我遇到了JSToolNPP与我最新更新的N ++不兼容的问题,我的确找到了一个看起来可行的替代品。 http://sourceforge.net/projects/nppjsonviewer/

使用风险自负。(在SExchange之外链接任何东西时,免责声明为标准免责声明)


1

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

这是我个人所做的。


1

您现在可以在Notepad ++中查看,没问题(也许旧版本有问题吗?)

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

然后按照github priject自述文件的说明进行操作:

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

对于win32,它应该是相同的过程,但我无法亲自对其进行验证。



-8

我知道您问过有关NotePad ++的问题,但是OS X的TextMate可以通过JSON捆绑包(称为“重新格式化文档”命令)来实现。


-9

最好的选择是使用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()"}]}}};

最后,点击CTRL+ SHIFT+ F,瞧!您有一个缩进的JSON对象。我也正在寻找Notepad ++ JSON格式化程序,并且很可能在将来的短时间内开发Npp插件。


1
如果您拥有Visual Studio,只需将json文本粘贴到一个新文件中,它将自动格式化。
谢尔盖·奥奇金

我也正在寻找Notepad ++ JSON格式化程序,如果您有相同的问题,请不要添加这样的答案并保持干净;)。
shA.t
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.