2013. 7. 10. 14:47

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
Posted by 광스