沒想到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