开发者

XML -> DOM -> Modify -> String

开发者 https://www.devze.com 2023-01-05 06:08 出处:网络
I am coding an Android client that talks to some web services via XML packets. A typical packet looks like this..

I am coding an Android client that talks to some web services via XML packets. A typical packet looks like this..

<Packet service="login">
  <username></username>
  <password></password>
</Packet>

I have about 20 of these packets and would like to store them in my resources maybe in res/xml or res/raw

I want to store these 'empty' packets and load them using XML DOM and then fill in the content between the tags or attributes but am un开发者_Python百科sure how to do this.

Once the DOM packet has been filled in I want to get that back as a String so that I can send the packet to the server.

So to summarize my questions are..

(1) How do I load an XML resource using DOM?

(2) How do I convert the DOM object to a String?


You can use the javax.xml.parsers.*, org.xml.sax.*, org.w3c.dom.*, org.xmlpull.v1.* packages for full XML support on Android. Here's a tutorial: http://www.ibm.com/developerworks/opensource/library/x-android/index.html


Conversion from xml to DOM is done by a XML Parser, common helper libraries are jdom or dom4j. You feed a stream to the parser and the result is (if the xml is OK) a DOM document.

The other way round is done with a XMLOutputter. That's basically a writer which takes a DOM document (or a node) and writes xml to a stream. jdom and dom4j both contain such a writer.

Use ByteArrayInputStream and ByteArrayOutputStream to convert between streams and String.

0

精彩评论

暂无评论...
验证码 换一张
取 消