try
{
DocumentBuilderFactory docfactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docfactory.newDocumentBuilder();
TransformerFactory factory = TransformerFactory.newInstance();
transformer transformer = factory.newTransformer();
Properties outFormat = new Properties();
outFormat.setProperty(OutputKeys.INDENT, "yes");
outFormat.setProperty(OutputKeys.METHOO, "xml");
outFormat.setProperty(OutputKeys.OMIT_XML_DECLARATION, "no");
outFormat.setProperty(OutputKeys.VERSION, "1.0");
outFormat.setProperty(Outputkeys.ENCODING, "UTF-8");
transformer.setOutputProperties(outFormat);
Document doc = docBuilder.newDocument();
Element root = doc.createElement("Root");
doc.appendChild(root);
DOMSource source = new DOMSource(doc);
OutputStream output = new StringOutputStream(); //StringOutputStream()은 클래스를 만들어주셔야되고 extends //OutputStream 하셔서 메소드를 오버라이딩 해줍니다. 구글링하시면 바로 나올겁니다.
StreamResult result = new StreamResult(output);
transformer.transform(source, result);
String s = output.toString(); //위의 엘리먼트나 에트리뷰트등을 만들었으면 그내용을 스트링변수에 담을수 있습니다.
}
catch(ParserConfigurationException e){e.printStackTrace();}
catch(TransformerException e){e.printStackTrace();}
이렇게 위의내용을 내가만들고싶은클래스(예: public class creatxmlDocument) 에 만들어 복붙하시고
메소드나 생성자 (예: public void creatxml(){ 위의내용 }) 안에 내용을 넣어서 만들어 주시고 메인activity의
onCreat 메소드 안에서 객체생성(예 creatxmlDocument cxd = new creatxmlDocument) 하셔서 메소드를 사용
(예 cxd.creatxml();) 해주시면 스트링형 변수 s 에 만든 xml 내용이 들어갑니다. 이 변수 s 를이용해 TextView에 띄울수도 있고
FileWriter 를 사용하여 write(s); 하여서 파일에 내용을 쓰기 할수가 있습니다. 모두 붗꽃코딩하시길
'Study > Android' 카테고리의 다른 글
Android TCC8900 NSD1410WS PC와 연결 (2) | 2013.08.06 |
---|---|
android Tab (0) | 2013.07.15 |
Android 생명주기 와 메소드 (0) | 2013.07.03 |
이클립스 테마 (0) | 2013.05.10 |
안드로이드 padding margin 레이아웃 잡기 (0) | 2013.03.29 |