Java - 从.YML中的列表中读取所有字符串

时间:2014-08-05 10:05:13

标签: java yaml

我想知道是否可以从YAML文件中读取并将所有项目放入列表中:这很难解释,但我会提供一个示例。 ArrayList lists = ???: 将提供内部

的YAML文件中的所有字符串
players:
  Y: 0
  X: 8
  Z: 0

是否有特定的代码来实际获取字符串,例如 列表将等于Y,X和Z,作为字符串并且可以修改。

非常感谢这一个的帮助:) 谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用任何yaml解析器。例如JYaml。问题中的yaml基本上是一个带有关键"玩家"并重视另一张地图。所以使用JYaml你可以像Object object = Yaml.load(new File("data.yml"));那样。默认情况下,JYaml将序列转换为java.util.ArrayList,并将映射转换为java.util.HashMap。所以我们可以这样做

Map<String, Map<String, String>> object = (HashMap<String, Map<String, String>>) Yaml.load(new File("data.yml"));

并获取

之类的关键字
object.get("players").keySet(); // Y, X, Z
object.get("players").values(); // 8, 0, 0