json viewer报“invalid json”不是插件故障,而是因语法不合法(如bom、单引号、注释、尾逗号、非法值)触发系统级解析器零容忍机制;需先清理编码与语法再格式化。

JSON Viewer插件点不动或报“Invalid JSON”怎么办
不是插件坏了,是它底层调用系统级 JSON 解析器,语法零容忍。只要不合法,就直接清空内容或弹错——这是设计,不是 bug。
- 开头有 BOM 或不可见字符(比如从微信、钉钉复制):先点
编码 → 转为 ANSI,再点编码 → 转为 UTF-8 无 BOM - 用了单引号:
{'name': 'foo'}❌ → 必须改成{"name": "foo"}✅ - 含
//或/* */注释:删掉,JSON 标准不支持注释 - 数组或对象末尾多逗号:
[1,2,]❌ → 改成[1,2]✅ - 值是
undefined、NaN、Infinity:这些不是合法 JSON 值,得换成null或字符串
JSTool 的 Ctrl+Alt+M 为什么排版错乱
它不真正解析 JSON,只靠正则“猜结构”,适合已知合法但缩进混乱的文本;对原始日志、不确定来源的字符串极不友好。
- 快捷键是
Ctrl+Alt+M,不是Ctrl+Alt+Shift+M(后者是 JSON Viewer 的) - 务必先选中文本再触发,否则会尝试格式化整文件——前面几行如果是 HTML 或注释,可能被一并“带歪”
- 字符串里含换行符(如
"msg": "line1\nline2")时,容易误判换行位置,导致缩进塌陷 - 缩进固定为 2 空格,不能改;也不支持
sort_keys
大文件或需要自定义缩进/排序 key 怎么办
JSON Viewer 和 JSTool 在 >5MB 文件下极易卡死、内存溢出甚至崩溃。真正可控的方式是调用本地 python -m json.tool。
将一个或多个视频上传至YouTube。当用户想“上传到YouTube”“发YouTube”“批量上传”“upload to YouTube”“post videos to YouTube”或发布到YouTube时使用此技能。
- 基础命令(生成新文件,不覆盖原文件):
python -m json.tool "$(FULL_CURRENT_PATH)" > "$(CURRENT_DIRECTORY)\formatted_$(NAME_PART).json" - 指定缩进 4 空格(Python 3.9+):
python -m json.tool --indent 4 "$(FULL_CURRENT_PATH)" > ... - 强制键名排序:
python -c "import json,sys; print(json.dumps(json.load(sys.stdin), indent=4, sort_keys=True))" - 执行前务必确认系统能运行
python -m json.tool,否则 NppExec 报错且无提示
格式化后中文变问号或方框怎么抢救
根本不是插件问题,是 Notepad++ 编码识别失败。一旦保存,基本不可逆。
- 没保存前:立刻按
Ctrl+Z撤销,然后点编码 → 转为 UTF-8 无 BOM,再重试 - 已保存且无备份:可尝试
编码 → 从 ANSI 重新载入(仅对极小概率的混编码有效) - 长期预防:打开
设置 → 首选项 → 新建文档/默认目录 → 编码,设为UTF-8 无 BOM
实际操作中,最常被忽略的是编码和语法合法性这两个前置条件——插件只是执行者,不是纠错员。










