DOM Parser: Как создать XML-файл в java

В этом руководстве мы покажем вам, как использовать синтаксический анализатор DOM для создания синтаксического анализатора XML.

DOM  имеет несколько классов для создания XML-файла. Во-первых, вам нужно создать Document с классом DocumentBuilder, set XML content, атрибут с классом Element. Наконец, вы должны использовать класс Transformer для передачи XML-содержимого в выходной поток.

В конце следующий файл с именем exemple.xml должны быть созданы:

 
< Справочник>
< идентификатор контакта="1">
< Имя> кодировщик
< Имя> java
< Мобильный> 098745126
< Электронная почта> codeurjava8@gmail.com


Класс, создающий XML:

import java.io.File; 
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;

public class CreateXML{

public static void main(String argv[]) {

try {

DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = dbFactory.newDocumentBuilder();

// корневой элемент
Документ doc = docBuilder.newDocument();
корневой элемент = doc.createElement("каталог");
doc.appendChild(root);

// элемент contact
Элемент контакта = doc.createElement("contact");
root.appendChild(contact);

// атрибуты элемента contact
Attr attr = doc.createAttribute("id");
attr.setValue("1");
contact.setAttributeNode(attr);

// имя
Имя элемента = doc.createElement("name");
name.appendChild(doc.createTextNode("coder"));
contact.appendChild(name);

// имя
Имя element = doc.createElement("имя");
firstname.appendChild(doc.createTextNode("java"));
contact.appendChild(имя);

// mobile
Mobile Element = doc.createElement("mobile");
mobile.appendChild(doc.createTextNode("098745126"));
contact.appendChild(mobile);

// email
Элемент email = doc.createElement("email");
email.appendChild(doc.createTextNode("codeurjava8@gmail.com"));
contact.appendChild(email);

// записываем содержимое в xml файл
TransformerFactory transformerFactory = TransformerFactory.newInstance();
трансформатор = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("monFichier.xml"));

transformer.transform(источник, результат);

System.out.println("Файл успешно скопирован!");

} catch (ParserConfigurationException pce) {
pce.printStackTrace();
} catch (TransformerException tfe) {
tfe.printStackTrace();
}
}
}
Output:

Файл успешно сохранен!
Новый файл monFichier.xml был создан в текущем каталоге, с кодировкой по умолчанию UTF-8.

Как создать XML-файл в Java

Вы можете создать атрибут с его значением напрямую:

attr.setValue("1"); 
contact.setAttributeNode(attr);
эквивалентно:

contact.setAttribute("id", "1");