从yml配置文件中读取未知数据

时间:2015-03-12 14:44:39

标签: java yaml config bukkit

我正在编写一个bukkit插件,该插件应该读取用户制作的yml配置文件中的数据,如下例所示。 我之前没有找到结果,事实上我真的不知道应该搜索什么。

示例配置:

maps:
  01:
    name: world
    displayname: Plains
    icon: 2
    size: 1000
    info:
    - 'Some information'
    - 'Another information string'
  02:
    name: world_nether
    displayname: Nether
    icon: 87
    size: 500
    info:
    - 'Information'
    - 'More information'
    - 'As many lines as needed...'

地图数量未知,用户可以根据需要创建任意数量,因此不仅0102,内容(name,{{1} },icon,...)总是一样的。

如何读出infomaps01,...)的数量以及保存不同类型内容的好方法(字符串,整数) ,列表)在Java?

2 个答案:

答案 0 :(得分:1)

你可以得到Set<String>个孩子。

请参阅ConfigurationSectionFileConfiguration

FileConfiguration fc = getConfig(); // Get the config
ConfigurationSection cs = fc.getConfigurationSection("maps");
boolean deep = false; 
for (String key : cs.getKeys(deep)) {
    //Key will be 01
}

答案 1 :(得分:-1)

您可以使用参数/[yourcommand] [Number] [...]。 如果您不想要命令,可以保存一行,如:Worlds: 1当您创建新的arena时,您可以从Worlds获取号码并覆盖它。