소스코드
import java.util.Properties;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
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.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class XMLGen {
public XMLGen() {
}
// DOM
private DocumentBuilderFactory factory;
private DocumentBuilder builder;
private Document doc;
public int xmlgen() {
factory = DocumentBuilderFactory.newInstance();
try {
builder = factory.newDocumentBuilder();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
doc = builder.newDocument();
// root 생성
Element root = doc.createElement(“Lyrics”);
doc.appendChild(root);
// child1 생성
Element child = doc.createElement(“Token”);
// 속성 생성
Attr attr = doc.createAttribute(“Position”);
// 속성 값 입력
attr.setValue(“23:23:23”);
child.setAttributeNode(attr);
// text 값 입력
child.setTextContent(“가사입니당”);
// child2 생성
Element child2 = doc.createElement(“Token”);
// 속성 생성
Attr attr2 = doc.createAttribute(“Position”);
// 속성 값 입력
attr2.setValue(“24:24:24”);
child2.setAttributeNode(attr2);
// text 값 입력
child2.setTextContent(“입니당”);
// root에 child들을 append
root.appendChild(child);
root.appendChild(child2);
TransformerFactory tr_factory = TransformerFactory.newInstance();
String xmlStr = “”;
try
{
StringWriter sw = new StringWriter();
Properties output = new Properties();
output.setProperty(OutputKeys.INDENT, “yes”);
output.setProperty(OutputKeys.ENCODING, “UTF-8”);
Transformer transformer = tr_factory.newTransformer();
transformer.setOutputProperties(output);
transformer.transform(new DOMSource(doc), new StreamResult(sw));
xmlStr = sw.getBuffer ().toString ();
System.out.println(xmlStr);
}
catch (Exception e)
{
e.printStackTrace();
}
return 0;
}
public static void main(String[] args) {
XMLGen xml = new XMLGen();
xml.xmlgen();
}
}