JSON(JavaScript Object Notation,JavaScript對象表示法)是一種輕量級資料交換格式。[1]
Minecraft使用JSON來儲存以下資料:
- 在完成的書、告示牌、自訂名稱以及
/tellraw
、/title
[僅Java版]、 /titleraw
[僅基岩版]和 /bossbar
[僅Java版]指令裡的文字。 - 描述Java版中資源包和資料包的
pack.mcmeta
檔案。 - 描述基岩版附加包的
manifest.json
。 - 在資源包裡定義模型、聲音事件和UI
[僅基岩版]的檔案。 - 在行為包中定義實體行為的檔案。
- 成就和統計(例如
.minecraft/saves/*/data/stats/*.json
)。 - 用於啟動器的檔案資料(例如
.minecraft/launcher profiles.json
)。 - 關於已下載的版本的資訊(例如
.minecraft/versions/<VERSION>/<VERSION>.json
)。 - 在資料包中定義進度、戰利品表、標籤、配方、維度、維度類型和述詞的檔案。
[僅Java版]
語法[]
JSON檔案必須始終包含用於封裝檔案資料的大括號。雖然JSON可以寫在一行內,但是一般為了可讀性會加入縮進和換行。
{
"string": "Hi",
"number": 1,
"object": {"stuff": "foobar", "digit": 13},
"array": ["spam", "foo"]
}
JSON檔案內所有元素的名稱必須用引號引起。要定義值,便需要在名稱後面加入一個冒號,並在冒號後寫上值。
{
"name": "value"
}
除了最後一個元素,所有包含在對象或陣列中的元素需要在它們的值後面加入一個逗號。
資料類型[]
JSON中有5種不同的有效資料類型:字串(string)、數值(number)、對象(object)、陣列(array)和布林值(boolean)。
字串[]
字串由雙引號定義,可以包含任何字元或空格的組合。
{
"foo": "bar",
"spam": "eggs"
}
數值[]
數值由輸入的任何數字定義。
{
"two": 2,
"one": 1,
"second": 1
}
物件[]
物件由一對大括號定義,且可以包含其他資料類型。檔案開頭和結尾處的大括號會組成一個物件。
{
"Bob": {
"ID": 47182,
"lastName": "Ramsay"
},
"Alice": {
"ID": 47183,
"lastName": "Berg"
}
}
陣列[]
陣列由一對中括號定義,且同樣可以包含其他資料類型。
{
"people": ["Bob", "Alice", "Carlos", "Eve"]
}
布林值[]
布林值使用「true」(真)或「false」(假)定義。
{
"Alice": {
"isMale": false
},
"Bob": {
"isMale": true
}
}
參考[]
語言