- 浏览: 120684 次
- 性别:
- 来自: 广州
-
文章分类
最新评论
-
gtd03:
[b][/b][i][/i][u][/u]引用[*][img] ...
js 监听监键盘动作 -
tomfish88:
你用5条数据太少了,你用50000条你就看出差距了
多线程效率问题
package kxmltest;
import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;
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 HttpServletXml3 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 HttpServletXml3() {
}
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 xml="<elements>"
+"<text><aa>abcd</aa></text>"
+"<text>text2</text>"
+"<abc>a</abc>"
+"<abc>b</abc>"
+"</elements>";
try {
ByteArrayInputStream bin = new ByteArrayInputStream( xml.getBytes() );
KXmlParser parser = new KXmlParser();
parser.setInput(new InputStreamReader(bin));
parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, true);
int eventType=parser.getEventType();
while(eventType!=XmlPullParser.END_DOCUMENT){
if(eventType==XmlPullParser.START_DOCUMENT){
System.out.println("start");
}else if(eventType==XmlPullParser.END_DOCUMENT){
System.out.println("end");
}else if(eventType==XmlPullParser.START_TAG){
System.out.println(parser.getName()+" START_TAG");
// System.out.println("start count"+parser.getAttributeCount());
// int size=parser.getAttributeCount();
// for(int i=0;i<size;i++){
// System.out.println(parser.getAttributeName(i)+" getAttributeName(i)");
// System.out.println(parser.getAttributeValue(i)+" getAttributeValue()");
// }
}else if(eventType==XmlPullParser.END_TAG){
System.out.println(parser.getName()+" END_TAG");
}else if(eventType==XmlPullParser.TEXT){
System.out.println(parser.getText()+" getText()");
}
eventType=parser.next();
}
// start
// elements START_TAG
// start count0
// text START_TAG
// start count0
// aa START_TAG
// start count0
// abcd getText()
// aa END_TAG
// text END_TAG
// text START_TAG
// start count0
// text2 getText()
// text END_TAG
// abc START_TAG
// start count0
// a getText()
// abc END_TAG
// abc START_TAG
// start count0
// b getText()
// abc END_TAG
// elements END_TAG
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
2
package kxmltest;
import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;
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 xml="<elements>"
+"<text>text1</text>"
+"<text>text2</text>"
+"</elements>";
try {
ByteArrayInputStream bin = new ByteArrayInputStream( xml.getBytes() );
KXmlParser parser = new KXmlParser();
parser.setInput(new InputStreamReader(bin));
System.out.println(XmlPullParser.START_TAG); //2
System.out.println(XmlPullParser.END_TAG); //3
parser.nextTag();
parser.require(XmlPullParser.START_TAG, null, "elements");
while(parser.nextTag() == XmlPullParser.START_TAG) {
parser.require(XmlPullParser.START_TAG, null, "text");
// handle element content
System.out.println("text content: "+ parser.nextText());
parser.require(XmlPullParser.END_TAG, null, "text");
}
parser.require(XmlPullParser.END_TAG, null, "elements");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
发表评论
-
j2me 获得基站id
2010-11-17 14:35 1334这个就是取得基站ID的代码。。。。但是,绝大多数J2ME手机都 ... -
j2me部署到手机上
2010-11-17 10:39 1055你是想把你现在做的这个手机项目打包成jar文件在正式手机上运行 ... -
Item
2010-11-17 09:21 695Item -
TextBox Ticker Alert 转载
2010-11-15 16:45 680TextBox Ticker Alert 使用 ... -
kxml 解析xml 姓名 内容显示
2010-11-15 15:47 842package blogkxml; import j ... -
关于ECLIPSE中j2me程序运行时报ALERT: java/lang/ClassFormatError: Bad version
2010-11-15 14:52 1168关于ECLIPSE中 j2me 程序 ... -
kxml 解析xml 高级
2010-11-10 15:59 1149package http; import javax ... -
j2me 读 servlet 所有数据
2010-11-04 17:19 798package http; import java.io.B ... -
httpconnection
2010-11-04 17:13 830... -
j2me 线程
2010-11-04 15:43 723package http; import java.io.D ...
相关推荐
使用kXML解析XML的基本流程如下: 1. **DOM解析**:如果你选择DOM解析,首先需要创建`XmlPullParserFactory`实例,然后使用`newPullParser()`方法获取`XmlPullParser`对象。接着,调用`setInput()`方法设置输入源...
使用KXML解析XML - **初始化解析器**:使用KXML前需获取`XmlParser`实例,传入`Reader`作为构造函数参数。例如: ```java try { Reader r = ...; // 获取Reader实例 XmlParser parser = new XmlParser(r); } ...
《深入理解KXML:解析XML的核心技术》 KXML,全称为Kotlin XML,是一个轻量级、高效的XML解析库,特别适用于Java平台。在Android开发中,由于其小巧的体积和良好的性能,KXML经常被用作XML解析的替代方案。本篇文章...
以上就是关于“xml解析+kxml2+xmlpull”的主要知识点,包括XML解析方式、KXML2解析库、XML Pull解析的原理及其实现,以及如何在实际项目中结合使用KXML2进行XML文档的解析。理解并掌握这些内容,将有助于你在处理XML...
基于j2me和kxml对XML文档进行解析的一个小程序。用来在手机上看看德语单词。
J2ME 中 KXML2 解析器解析 xml 文件源代码所需要的压缩包 kxml2-min-2.3.0.jar。
根据题目中的描述,在使用KXML2解析XML文档时遇到了一个特殊的问题:无法直接提取`<script>`标签中的内容。这主要是因为XML解析器通常会忽略`<script>`标签内的文本内容,将其视为脚本而非普通文本。对于这种情况,...
使用KXML2解析XML的基本步骤如下: 1. 引入库:首先,你需要在项目的类路径中包含kxml2-2.3.0.jar或kxml2-min-2.3.0.jar。 2. 创建解析器:使用`XmlParser`类创建一个解析器对象,通常通过传递输入流(InputStream...
之后,就可以利用kxml2提供的类和方法来解析XML文档。 8. **核心类和方法**:kxml2的主要类包括`XmlPullParser`和`XmlSerializer`。前者用于解析XML,后者用于生成XML。通过调用这些类的方法,如`next()`、`getName...
4.1 `org.kxml2.io.KXmlParser`:这是XMLReader的主要实现类,负责解析XML输入流并触发解析事件。 4.2 `org.kxml2.kdom.Node`:这个类是解析结果的基本元素节点,包括元素、文本、注释等。 4.3 `org.kxml2.wap....
**标题:“kuixdemo-1.0.0 (J2ME下解析xml文件)”,意味着这是一个专门用于在Java 2 Micro Edition (J2ME)环境中解析XML文件的示例程序。** **描述:“在J2ME下对XML文件进行解析的示例源码及帮助文件”指出,该...
本资料包“android解析xml源码和ppt”提供了关于Android系统如何解析XML以及相关PPT的深入讲解。以下是关于这个主题的详细知识点: 1. XML解析器类型: - DOM(Document Object Model)解析器:它一次性加载整个...
在Android平台,解析XML的方式多种多样,其中之一就是使用kxml2库。kxml2是一个轻量级、快速的XML解析器,适用于资源有限的设备,如移动设备。本文将深入探讨kxml2-2.2.2.jar这一版本的库,揭示其在XML解析中的重要...
KXML是轻量级的XML解析库,适用于资源有限的J2ME环境,可用于处理XML数据的读取和写入。 5. 相关 J2ME 组件的说明 5.1. DISPLAY、DISPLAYABLE 和 SCREENS DISPLAY是J2ME中管理显示屏幕的对象,DISPLAYABLE代表可...
例如,在Java中,SAX解析可以使用`org.xml.sax`包,DOM解析可以使用`javax.xml.parsers`包,而XML Pull解析可以使用`org.xmlpull.v1`包(如kxml2或StaX)。在实现时,需要根据解析方法的特性编写相应的代码逻辑,...
在实际开发中,使用KXML2解析XML的步骤大致如下: 1. 创建XMLPullParser对象,通常通过XMLPullParserFactory的newInstance()方法,并指定KXML2的类路径。 2. 调用setInput()方法,传入XML的输入流或字符序列。 3. ...
它提供了一种编程接口,允许开发者在Java环境中读取和解析XML文档,而无需依赖完整的DOM(Document Object Model)或SAX(Simple API for XML)解析器。这种解析方式被称为“拉”模型,因为控制解析流程的是应用程序...
《深入理解KXML2:解析XML的J2ME利器》 KXML2,作为一个轻量级的XML解析库,尤其在J2ME(Java 2 Micro Edition)环境中,它扮演了重要的角色。J2ME是Java平台的一个子集,主要用于嵌入式设备,如手机、智能手表等,...
在Java开发中,处理XML数据是一项常见的任务,无论是读取配置文件、交换数据还是解析XML文档,都需要高效的解析工具。"kxml2-2.3.0.jar" 和 "xmlpull_1_1_3_4c.jar" 是两个关键的库文件,专门用于XML解析。这两个库...
为了高效地解析XML文档,开发者通常会使用解析器库,如KXML2和XMLPull。这两个库在Java环境中为XML解析提供了轻量级、高效的解决方案。 KXML2是一个小型、快速且易于使用的XML解析库,适用于Java ME(移动版Java)...