首先是me下的http连接:
一、cmnet的连接方式:
String netAddress = "http://";//这里是"http://"开始的整个地址 HttpConnection http = (HttpConnection) Connector.open(netAddress);//创建一个http的连接 http.setRequestMethod(HttpConnection.POST);//设置连接方式 DataInputStream dis = http.openDataInputStream();//打开连接的输入流 String getData = dis.readUTF();//得到输入流的String类型的数据,也可以有其他方法
二、cmwap的连接方式:
String wapAddress = "";//这里是"http://"之后的部分 HttpConnection http = (HttpConnection) Connector.open("http://10.0.0.172:80"+wapAddress, Connector.READ,true);//创建一个http的连接方式 http.setRequestProperty("X-Online-Host", Const.IP);//其中Const.IP为IP地址 http.setRequestProperty("Accept", "*/*"); http.setRequestMethod(HttpConnection.POST);//设置连接方式 DataInputStream dis = http.openDataInputStream();//打开连接的输入流 String getData = dis.readUTF();//得到输入流的String类型的数据,也可以有其他方法
然后是发送接收
一般情况是在URL地址下使用属性传参:
以上地址中的an属性的属性值为0,多个属性用&隔开,将你需要传的数据和URL地址拼接好之后放入(HttpConnection) Connector.open(netAddress);中的netAddress替换成你拼接好的URL地址就行,在接收的时候创建DataInputStream dis = http.openDataInputStream();DataInputStream有很多接收的方法,你查查API,一般是直接用readUTF()这个方法。
最后是解析xml文件,有专门的解析xml的工具,例如kxml、dom4j什么的,需要将相应的包加入你的me工程中,这里用kxml作为参考
1、导入org.kxml2.io包中的KXmlParser类和org.xmlpull.v1中的XmlPullParser、XmlPullParserException这两个类
2、将需要解析的内容放入流中
3、new一个KXmlParser的对象
KXmlParser parser = new KXmlParser();
4、调用parser的setInput方法
parser.setInput(is,null);
其中is为InputStream的对象
5、调用parser.next();
6、设置需要解析的根节点元素
parser.require(KXmlParser.START_TAG,null,"根节点标记名");
7、使用while循环判断parser.nextTag!=KXmlParser.END_TAG
8、取得标记名name=parser.getName();
9、使用if语句进行判断name是不是子节点元素
if(name.equals("子节点标记名"))
10、取下一个标记parser.next();
11、用while语句判断不为结束标记
while(parser.nextTag()!=KXmlParser.END_TAG)
12、若还有其他子节点继续用if判断while循环
13、在使用parser.require()方法时,需要使用另一组设定结束标记
parser.require(KXmlParser.END_TAG,null,"上一次使用的根节点标记")
14、之后还必须有parser.next();
15、在解析结束时设定如下
parser.require(KXmlParser.END_DOCUMENT,null,null);
注意:
在得到name=parser.getName()的值之后使用text=parser.nextText()得到标记的属性值。
这里需要导入的类已经打包成了jar文件,直接导入即可。