다음 코드를 고려하십시오 :이 방법은 주어진 경로에 YAML 파일로, 지정된 키에 지정된 객체 O를 작성하는 목표SnakeYaml을 사용하여 YAML 파일에 어떻게 쓰나요?
public static void dumpObjectToYaml(String key, Object O, String path) throws IOException
{
Map<String, Object> data = new HashMap<>();
data.put(key, O);
File F = new File(path);
F.mkdirs();
F.createNewFile();
//write data to File
}
. (존재하지 않는다면 만들어집니다.)하지만 분명히 주요 부분은 여전히 사라져 있습니다.
다음은 the documentation of SnakeYaml입니다. YAML을 만들려면지도를 만들고 오른쪽 키에 Objects를 넣으면됩니다.
아무데도 (적어도 나는 그것을 볼 수 없다) 특정 경로에 yaml 파일을 만드는 방법이 설명되어 있습니다!
내가 찾은 유일한 것은이었다
는 "Yaml.dump (Object 데이터) 메소드는 자바 객체를 받아 들여 YAML 문서 생성"
public void testDump()
{
Map<String, Object> data = new HashMap<String, Object>();
data.put("name", "Silenthand Olleander");
data.put("race", "Human");
data.put("traits", new String[] { "ONE_HAND", "ONE_EYE" });
Yaml yaml = new Yaml();
String output = yaml.dump(data);
System.out.println(output);
}
및
을 Yaml.dump (Object data, Writer output)는 생성 된 YAML 문서를 지정된 파일/stream에 씁니다. "
public void testDumpWriter()
{
Map<String, Object> data = new HashMap<String, Object>();
data.put("name", "Silenthand Olleander");
data.put("race", "Human");
data.put("traits", new String[] { "ONE_HAND", "ONE_EYE" });
Yaml yaml = new Yaml();
StringWriter writer = new StringWriter();
yaml.dump(data, writer);
System.out.println(writer.toString());
}
는하지만 여전히, 정확히 그 코드의 두 번째 비트에서 말한다해도, 특정 파일의 조작을 지원하지 않는 것 그리고 확실히 그것을 수행하는 방법을 보여 아니에요.
나만이나 문서가 매우 신빙성이 있고 지정되어 있다고 느끼나요? 그 중 절반은 내가 들어 본 적이없는 특별한 어플리케이션에 관한 것입니다. 나는 그것을 단지 보면서 정말로 멍청하다고 느낀다. 그리고 그것은 나를 다소 화나게한다.
아무튼; 네가 나에게 줄 수있는 도움에 정말 감사 할께.
고마워요. : 정확히 내가 무엇을 찾고 있었는지 ... –
하지만 지금은 다른 문제가 있습니다. 첫 번째 두 data.put()의 결과는 다음과 같습니다. {인종 : 사람, 이름 :. YAML에 Silenthand Olleander} 나는 세 번째 넣어 추가 할 경우에만, 내가 얻을 : 특성을 : [ONE_HAND, ONE_EYE] 종족 : 인간 이름 : 좋아 Silenthand Olleander 가해야 당신이 있습니까. 그 이유는 무엇입니까? –
해당 필드에서 올바른 값을 읽을 수 있기 때문에 여전히 "정확합니다"하지만이 레이아웃은 모든 값에 자체 행이있을 때보 다 읽기 쉽지 않습니다.나는 문서를 더 작게 만드는 것이지만 그것을 바꿀 수있는 것을 선호한다고 생각합니다. –