YAML空間名稱是解析YAML用JAVA
innings:
- 1st innings:
team: Australia
runs:500
- 2nd innings:
team: Australia
runs:501
Java代碼:
import java.io.File;
import java.util.List;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
/**
* Hello world!
*
*/
public class App {
public static void main(String[] args) throws Exception {
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
try {
Innings user = mapper.readValue(new File("a.txt"), Innings.class);
System.out.println(ReflectionToStringBuilder.toString(user,ToStringStyle.MULTI_LINE_STYLE));
} catch (Exception e) {
e.printStackTrace();
}
}
}
class Innings {
public List<Inning> innings;
}
class Inning{
public int runs;
public String team;
}
錯誤追蹤: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException:無法識別的領域「第1局(inning)「,沒有標記爲可忽略的(2個已知屬性:,」runs「,」team「]) at [Source:a.txt;行:3,欄:7](通過參考鏈:局[[局]] - >局[[第一局]])
注意:請建議其他解析器,如果傑克遜無法幫助這裏。
只要知道java開發人員在他們首先看到用小寫字母命名類的時候會感到非常痛苦。 – Scadge
或非私人課程中的公共非終結字段。 – Qix
是的,我明白了,其實我有同名的「圍墾」同一類,創建該類暫時我做了一個多級的「局」 – Nitsshukla