j2me 如何把xml显示到屏幕上
纪中伟 2010-07-28 11:52:29 package com.capinfo.mobile;
import java.io.InputStream;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import com.capinfo.mobile.xml.test.BasicHandler;
public class Main extends MIDlet {
// private Logger logger = LoggerFactory.getLogger(Main.class);
protected void startApp() throws MIDletStateChangeException {
try {
// 创建SAXParser的实例
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser saxParser = factory.newSAXParser();
// 接下来我们要获得XML文件的输入流,并把它作为其中一个参数传递给saxParser的parse方法,
InputStream is = this.getClass().getResourceAsStream("gps_demo.xml");
saxParser.parse(is, new BasicHandler());
} catch (Exception e) {
e.printStackTrace();
}
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
}
=======================================================================================
package com.capinfo.mobile.xml.test;
import java.util.Stack;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class BasicHandler extends DefaultHandler {
private Stack tagStack = new Stack();
public void startDocument() throws SAXException {
}
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
System.out.println("the qName is " + qName);
tagStack.push(qName);
}
public void characters(char[] ch, int start, int length)
throws SAXException {
String chars = new String(ch, start, length).trim();
}
public void endElement(String uri, String localName, String qName)
throws SAXException {
System.out.println("the end qName is " + qName);
tagStack.pop();
}
}
怎么把读出来的xml输出到屏幕上