我正在製作我的第一個bukkit插件。我想以編程方式創建一個代表HashMap
的YAML文件。我如何設置和獲取這個數據結構?如何在YAML配置文件中設置/獲取HashMap?
的HashMap
參數看起來像<Signature, Location>
,其中Signature
是我的類存儲4個整數,並且Location
是org.bukkit.Location
我想我會喜歡YAML文件,看起來像這樣,但我不知道,如果這種結構最好是:
MyPlugin:
ListOfData:
- signature: [1,2,3,4] # this is a unique set of 4 integers
location: [122,64,254] # non-unique set of 3 integers
- signature: [4,2,1,2]
location: [91,62,101]
- signature: [3,3,1,3]
location: [190,64,321]
Signature
可以根據需要進行修改,並在必要時我可以Location
創建一個包裝。
謝謝!
我最初的答案在例子YAML中有一個語法錯誤,我忽略了字符串周圍的引號,並且在每個HashMap配對中的冒號(:)後需要空格。我已更正了文字。 – Iain
一些潛在的缺陷:1)因爲你正在存儲位置,所以考慮是否除了座標之外還需要存儲世界名稱(以便與多世界兼容)。 2)如果getConfigurationSection無法找到指定的段路徑,它將返回null,因此如果您不是100%確定該段路徑將存在,則應該單獨執行該步驟並檢查是否爲空。 – Iain
我決定創建一個包裝器並對數據進行序列化(因爲它不是絕對必要的,所以它是文本編輯的),但我會考慮你的未來答案。謝謝! – BLuFeNiX