如何将ArrayList写入XML文件?

如何将ArrayList写入XML文件?,第1张

如何将ArrayList写入XML文件
public static void main(String[] args) {    // TODO Auto-generated method stub    WriteFile ob = new WriteFile();    ArrayList list = new ArrayList();    list.add(new details("A", 20, 1));    list.add(new details("B", 30, 2));    ob.writeXmlFile(list);}

//根据需要修改下面的类

class details {String name;public String getName() {    return name;}public void setName(String name) {    this.name = name;}public int getAge() {    return age;}public void setAge(int age) {    this.age = age;}public int getId() {    return id;}public void setId(int id) {    this.id = id;}int age;int id;public details() {}public details(String name_, int age_, int id_) {    name = name_;    age = age_;    id = id_;}

//下面的类实际写了

public void writeXmlFile(ArrayList<details> list) {    try {        documentBuilderFactory dFact = documentBuilderFactory.newInstance();        documentBuilder build = dFact.newdocumentBuilder();        document doc = build.newdocument();        Element root = doc.createElement("Studentinfo");        doc.appendChild(root);        Element Details = doc.createElement("Details");        root.appendChild(Details);        for (details dtl : list) { Element name = doc.createElement("Name"); name.appendChild(doc.createTextNode(String.valueOf(dtl         .getName()))); Details.appendChild(name); Element id = doc.createElement("ID"); id.appendChild(doc.createTextNode(String.valueOf(dtl.getId()))); Details.appendChild(id); Element mmi = doc.createElement("Age"); mmi.appendChild(doc.createTextNode(String.valueOf(dtl.getAge()))); Details.appendChild(mmi);        }        // Save the document to the disk file        TransformerFactory tranFactory = TransformerFactory.newInstance();        Transformer aTransformer = tranFactory.newTransformer();        // format the XML nicely        aTransformer.setOutputProperty(OutputKeys.ENCODING, "ISO-8859-1");        aTransformer.setOutputProperty(     "{http://xml.apache.org/xslt}indent-amount", "4");        aTransformer.setOutputProperty(OutputKeys.INDENT, "yes");        DOMSource source = new DOMSource(doc);        try { // location and name of XML file you can change as per need FileWriter fos = new FileWriter("./ros.xml"); StreamResult result = new StreamResult(fos); aTransformer.transform(source, result);        } catch (IOException e) { e.printStackTrace();        }    } catch (TransformerException ex) {        System.out.println("Error outputting document");    } catch (ParserConfigurationException ex) {        System.out.println("Error building document");    }}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5105012.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-16
下一篇2022-11-16

发表评论

登录后才能评论

评论列表(0条)

    保存