我使用JAXB將我的對象寫入Java中的XML文件。它成功寫入。我檢查XML文件,所有的值都是真實的。但是當我想讀取這個XML文件時,一些元素值會改變。你有什麼想法嗎?JAXB XML解析問題
我的表類有2個實例,其類型是行列表(行類)和類型(從類型類)。
Table t = tester.readXML("tables/course.xml");
List<Row> rows = new LinkedList<Row>();
rows.addAll(t.getRows());
for(Row r : rows)
System.out.println(r.getName() + " " + r.getType().getIsPrimary());
}
下面是XML讀取器的方法:
public Table readObject(String filepath) throws JAXBException {
JAXBContext jc = JAXBContext.newInstance(Table.class);
Unmarshaller u = jc.createUnmarshaller();
Table hw = (Table) u.unmarshal(new File(filepath));
return hw;
}
public Table readXML(String file) {
try {
File f = new File(file);
if(f.exists()) {
Table t = new Table();
t = readObject(file);
return t;
}
} catch (JAXBException e) {
e.printStackTrace();
}
return null;
}
你能張貼ReadXML的功能?另外,您可以發佈寫入/編組XML的代碼嗎? – Pace 2011-04-22 18:10:23
對不起,我發送 – onurbaysan 2011-04-22 18:15:57
什麼值改變了?另外,如果將加載的XML寫回文件,它是否與原始XML不同? – 2011-04-22 18:24:34