请问各位,如果我有一个list对象集合和一个输出路径,想通过这个对象集合自动生成XML文件如何实现?
比如有一个方法:
public inputDataToXml(List list, String path) {}
大概怎么实现,谢谢各位

解决方案 »

  1.   

    1.自个儿用字符串拼成一个xml
    2.用java的org.w3c.dom包里的东西生成一个xml
      

  2.   

    import java.io.File;
    import java.util.ArrayList;
    import java.util.List;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.transform.OutputKeys;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;import org.w3c.dom.Document;
    import org.w3c.dom.Element;public class TestFile {
        private static List<String> list = new ArrayList<String>();
        static {
            list.add("a");
            list.add("b");
            list.add("c");
        }    public static void main(String args[]) throws Exception {
            Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
            Element element = document.createElement("rootTag");
            document.appendChild(element);
            for (String str : list) {
                Element childElement = document.createElement("list");
                childElement.appendChild(document.createTextNode(str));
                element.appendChild(childElement);
            }
            Transformer transformer = TransformerFactory.newInstance().newTransformer();
            transformer.setOutputProperty(OutputKeys.INDENT, "yes");
            transformer.setOutputProperty(OutputKeys.METHOD, "xml");
            transformer.transform(new DOMSource(element), new StreamResult(new File("c:\\list.xml")));
        }
    }
      

  3.   

    mport java.io.FileWriter;import org.dom4j.Document;
    import org.dom4j.DocumentHelper;
    import org.dom4j.Element;
    import org.dom4j.io.OutputFormat;
    import org.dom4j.io.XMLWriter;public class CreateXml {

    public void CreateXmls(){
    Document xmlfile=DocumentHelper.createDocument();
    Element root = xmlfile.addElement( "root" );    Element author1=root.addElement( "author" ); 
        author1.addAttribute( "name", "name" ) ;
        author1.addText( "test" );
        try{
            
            OutputFormat format=new OutputFormat(" ",true,"utf-8");        //设置输出格式为空两格,换行,编码为utf-8
            XMLWriter writer = new XMLWriter(new FileWriter("d:/output1.xml"),format);  //创建输出对象
            writer.write(xmlfile);
            writer.close();
        }
       catch (Exception e){
           e.printStackTrace();
       }
    }public static void main(String[] args) {
    CreateXml createXml=new CreateXml();
    createXml.CreateXmls();

    }
    }