2

我需要将 yaml 文件数据访问到 java 文件中。我使用了 YamlReader 类,现在将 yaml 文件加载到 java 类对象中。现在所有信息都在对象中,我想从这个对象中提取它。我该怎么做。任何人都可以帮助我吗?我被这个问题困住了。

4

3 回答 3

0

使用snakeyaml,下面的代码对我不起作用。当 yaml 对象返回我的对象​​时,它返回了一个LinkedHashMap类型。所以我将返回的对象转换为LinkedHashMap.

public class YamlConfig {

    Yaml yaml = new Yaml();
    String path = "blah blah";
    InputStream input = new FileInputStream(new File(this.path));
    LinkedHashMap<String,String> map;

    @SuppressWarnings("unchecked")
    private void loadHashMap() throws IOException {
        Object data = yaml.load(input);// load the yaml document into a java object
         this.map = (LinkedHashMap<String,String>)data;
         System.out.println(map.entrySet()); //use this to look at your hashmap keys
         System.out.println(map);//see the entire map
    }
于 2012-08-31T19:25:00.597 回答
0
Yaml yaml = new Yaml();
String document = "\n- Hesperiidae\n- Papilionidae\n- Apatelodidae\n- Epiplemidae";
List<String> list = (List<String>) yaml.load(document);
System.out.println(list);
于 2012-02-01T15:13:49.623 回答
0

您可以读入地图:

YamlReader reader = new YamlReader(new FileReader("contact.yml"));
Object object = reader.read();
System.out.println(object);
Map map = (Map)object;
System.out.println(map.get("address"));

来源:http ://code.google.com/p/yamlbeans/

于 2012-01-27T12:51:48.563 回答