package blogkxml;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import org.kxml2.io.KXmlParser;
import org.xmlpull.v1.XmlPullParser;
public class HttpServletXml extends MIDlet implements CommandListener{
private Display dis;
private Form frm=new Form("网页信息为"); //记住new
private TextField tf=new TextField("输入地址","",50,TextField.ANY);
private Command submit=new Command("登陆",Command.SCREEN,1);
public HttpServletXml() {
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
}
protected void pauseApp() {
}
protected void startApp() throws MIDletStateChangeException {
dis=Display.getDisplay(this);
dis.setCurrent(frm);
frm.addCommand(submit);
frm.append(tf);
frm.setCommandListener(this);
}
public void commandAction(Command c, Displayable d) {
if(c==submit){
ThreadDemo td=new ThreadDemo();
td.start();
}
}
class ThreadDemo extends Thread{
public void run(){
String url="http://localhost:8080/abc"; //servlet
try {
HttpConnection hc=(HttpConnection)Connector.open(url);
KXmlParser parser=new KXmlParser();
parser.setInput(hc.openInputStream(), "UTF-8");
parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, true);
int eventType=parser.getEventType();
while(eventType!=XmlPullParser.END_DOCUMENT){
if(eventType==XmlPullParser.START_TAG){
String tag=parser.getName();
eventType=parser.next();
if("Blogs".equals(tag)){
}else if("Blog".equals(tag)){
}else if("Content".equals(tag)){
System.out.println(parser.getText());
String content=parser.getText();
if(content!=null){
frm.append(parser.getText());
}
}else if("Name".equals(tag)){
System.out.println(parser.getText());
frm.append(parser.getText()+"说:");
}
}else if(eventType==XmlPullParser.END_TAG){
}
eventType=parser.next();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
分享到:
相关推荐
当解析XML时,KXML会调用这些方法,将XML文档转化为一系列的事件,开发者可以通过监听这些事件来处理XML内容。 3. **XML标签处理** `org.kxml2.io.KXmlParser`是KXML实现的`XmlPullParser`具体类,它是解析XML的...
以上就是关于“xml解析+kxml2+xmlpull”的主要知识点,包括XML解析方式、KXML2解析库、XML Pull解析的原理及其实现,以及如何在实际项目中结合使用KXML2进行XML文档的解析。理解并掌握这些内容,将有助于你在处理XML...
为了在Java程序中解析XML文档,我们可以使用各种库,其中之一就是kXML。kXML是一个轻量级、快速且高效的XML解析器,尤其适用于资源有限的环境,如移动设备或嵌入式系统。 kXML库由Kohsuke Kawaguchi创建,它提供了...
J2ME 中 KXML2 解析器解析 xml 文件源代码所需要的压缩包 kxml2-min-2.3.0.jar。
基于j2me和kxml对XML文档进行解析的一个小程序。用来在手机上看看德语单词。
根据题目中的描述,在使用KXML2解析XML文档时遇到了一个特殊的问题:无法直接提取`<script>`标签中的内容。这主要是因为XML解析器通常会忽略`<script>`标签内的文本内容,将其视为脚本而非普通文本。对于这种情况,...
事件驱动意味着在解析XML文档的过程中,解析器会触发一系列事件,如开始元素、结束元素、文本内容等,开发者可以通过注册事件处理器来对这些事件进行响应。 在KXML2-2.3.0.jar中,包含了完整的KXML库,提供完整的...
kxml2是一个轻量级的XML解析库,它在Java平台上运行,并且是XML Pull解析器的实现之一。XML Pull是一种处理XML文档的事件驱动模型,允许开发者通过一系列的读取操作来解析XML数据,而无需构建整个XML文档树。这种...
《深入解析KXML2.3.0:J2ME中的XML解析框架》 XML(eXtensible Markup Language)作为一种可扩展标记语言,广泛应用于数据交换、配置文件和文档存储等领域。在Java Micro Edition(J2ME)环境中,由于资源有限,对...
《深入解析kxml2-2.2.2.jar:Android XML解析的重要库》 XML(eXtensible Markup Language)是一种被广泛应用于网络数据交换的标准格式,尤其在Android开发中,XML用于布局文件、配置文件等多种场景。在Android平台...
例如,在Java中,SAX解析可以使用`org.xml.sax`包,DOM解析可以使用`javax.xml.parsers`包,而XML Pull解析可以使用`org.xmlpull.v1`包(如kxml2或StaX)。在实现时,需要根据解析方法的特性编写相应的代码逻辑,...
J2ME中使用KXML解释XML文件 J2ME中使用KXML解释XML文件
1. **KXML库**:KXML是轻量级的XML解析库,特别适合资源有限的J2ME环境。它提供了SAX(Simple API for XML)解析器的简化版本,通过事件驱动的方式处理XML文档。 2. **NanoXML**:另一个轻量级的XML解析库,它使用...
- `org.kxml2.io.KXmlParser`:Android系统默认使用的XML Pull解析器实现,基于kXML库。 - 源码中,关注`parse()`方法,它是解析过程的入口,`next()`和`eventType`属性用于跟踪解析进度。 4. 使用PPT进行学习: ...
开发者可以通过这个工厂创建一个解析器,然后通过解析器的next()方法移动到下一个XML事件,使用方法如getName()获取当前事件的标签名,getAttributeValue()获取属性值,getText()获取文本内容等。 在实际开发中,...
通常,开发者会先引入`xmlpull_1_1_3_4c.jar`作为基础的XML解析框架,然后利用`kxml2-2.3.0.jar`中的KXML2实现更友好的API,使得XML处理更加简洁和直观。例如,KXML2提供了一个`XmlPullParser`的实现,开发者可以像...
KXML2-2.2.2是一个轻量级的XML解析库,专为Java平台设计,尤其适用于资源有限的设备,如智能手机和平板电脑。它提供了两种解析方式:SAX(Simple API for XML)和Pull解析,本文将主要探讨其在Android中应用的Pull...
《深入理解KXML2:解析XML的J2ME利器》 KXML2,作为一个轻量级的XML解析库,尤其在J2ME(Java 2 Micro Edition)环境中,它扮演了重要的角色。J2ME是Java平台的一个子集,主要用于嵌入式设备,如手机、智能手表等,...
解析xml可能需要用到的jar包:kxml,版本:2.2.1。