如何使用“文档”(XOM)内容创建和编写XML

时间:2013-07-07 18:05:11

标签: java xml serialization

我正在尝试使用“XOM”创建一个XML文件,这是一个Java库。我使用XOM API创建了XML的结构,但是现在我需要创建一个具有这种结构的文件来保存这些数据。

名为“config.xml”的文件是使用FileWriter创建的,但其中没有任何行。

这是我的代码:

    // Creating the main element
    Element projetoMusica = new Element("projetoMusica");

    // Creating the childs of "projetoMusica".
    Element notas = new Element("notas");
    Element acordes = new Element("acordes");
    Element campos = new Element("campos");
    Element acordeNota = new Element("acordeNota");
    Element campoNota = new Element("campoNota");
    Element campoAcorde = new Element("campoAcorde");

    // Associating the structure
    projetoMusica.appendChild("\n");
    projetoMusica.appendChild(notas);
    projetoMusica.appendChild("\n");
    projetoMusica.appendChild(acordes);
    projetoMusica.appendChild("\n");
    projetoMusica.appendChild(campos);
    projetoMusica.appendChild("\n");
    projetoMusica.appendChild(acordeNota);
    projetoMusica.appendChild("\n");
    projetoMusica.appendChild(campoNota);
    projetoMusica.appendChild("\n");
    projetoMusica.appendChild(campoAcorde);

    // Creating a Document object (from "XOM" API).
    Document doc = new Document(projetoMusica);

    try {
        FileWriter xmlFILE = new FileWriter("C:\\config.xml");
        PrintWriter write = new PrintWriter(xmlFILE);
        write.print(doc.toXML());

    } catch (IOException ex) {
        Logger.getLogger(Administracao.class.getName()).log(Level.SEVERE, null, ex);
    }

如何在此.xml文件中正确编写?

1 个答案:

答案 0 :(得分:1)

您需要调用write.flush()以将写入器的缓冲内容写入文件。这是由于PrintWriter(Writer x)构造函数的使用,默认情况下不会自动刷新内容。有关详细信息,请参阅JavaDoc