我正在制作我的第一个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