首页 > Web开发 > 详细

JSON遇到的坑

时间:2021-07-23 16:07:01      阅读:13      评论:0      收藏:0      [点我收藏+]

没想到Json文件保存编码会遇到如此多的坑,事情是这样的,一开始用记事本文件创建了一个json文件,并保存为data.json。

{
    "project": {
        "config": {
            "name": "上海五角场购物中心",
            "author": "xxxxxx项目部",
            "time": "2017-08-02 18:00:00",
            "data_source_app": "AutoCad",
            "data_source_app_version": "2020",
            "building_info": {},
            "extro_info": {}
        },
        "data": {
            "dwgs": [{
                    "id": 1,
                    "name": "一层",
                    "fileName": "一层过滤.dwg",
                    "path": "D:/CAD图块库/深化提资CAD/dwgs/一层过滤.dwg",
                    "description": "上海五角场购物中心一楼",
                    "time": "2021-07-02 18:00:00",
                    "thumbnail": "/pics/五角场_一层过滤.png"
                },
                {
                    "id": 2,
                    "name": "二层",
                    "fileName": "二层过滤.dwg",
                    "path": "D:/CAD图块库/深化提资CAD/dwgs/二层过滤.dwg",
                    "description": "上海五角场购物中心一楼",
                    "time": "2021-07-02 18:00:00",
                    "thumbnail": "/pics/五角场_二层过滤.png"
                }
            ],
            "extro_info": {}
        }
    }
}

注意此时的文件编码为ANSI

技术分享图片

 

 此时运行程序没错,但是在命令行或VSCode中显示不正确

Sketchup的Ruby控制台+中显示如下:

技术分享图片

 

 VSCode中显示如下

技术分享图片

 

 于是乎把文件另存为了UNICODE码

技术分享图片

 

 此时在Ruby控制台+中显示出了错误

技术分享图片

 

 而在VSCode中查看到的文件编码为UTF-16LE

技术分享图片

 

 

 接下来把文件编码改为了UTF-8,以为应该没问题了

技术分享图片

 

此时Ruby控制台+出现下面的错误

技术分享图片

 

 而在VSCode中查看到的编码格式为UTF-8 with BOM

技术分享图片

 

 

终极解决方案:

在VSCode中点击选择编码后选择保存编码为UTF-8

技术分享图片

 

 

 一切都正常了

JSON遇到的坑

原文:https://www.cnblogs.com/unicornsir/p/15048420.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!