转自 http://www.cnblogs.com/lm3515/archive/2011/03/30/2000335.html
窗体一
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
package
Http.View;
import
java.io.IOException;
import
java.io.StringReader;
import
java.util.ArrayList;
import
java.util.Iterator;
import
java.util.List;
import
javax.xml.parsers.SAXParserFactory;
import
mars.modle.Mp3Info;
import
org.apache.http.HttpEntity;
import
org.apache.http.HttpResponse;
import
org.apache.http.HttpStatus;
import
org.apache.http.NameValuePair;
import
org.apache.http.client.ClientProtocolException;
import
org.apache.http.client.HttpClient;
import
org.apache.http.client.entity.UrlEncodedFormEntity;
import
org.apache.http.client.methods.HttpPost;
import
org.apache.http.impl.client.DefaultHttpClient;
import
org.apache.http.message.BasicNameValuePair;
import
org.apache.http.util.EntityUtils;
import
org.xml.sax.InputSource;
import
org.xml.sax.XMLReader;
import
android.app.Activity;
import
android.content.Intent;
import
android.os.Bundle;
import
android.view.View;
import
android.widget.Button;
import
android.widget.TextView;
public
class
Post
extends
Activity {
TextView mTextView =
null
;
@Override
protected
void
onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super
.onCreate(savedInstanceState);
setContentView(R.layout.post);
mTextView = (TextView)
this
.findViewById(R.id.my);
//http地址
//获得的数据
HttpPost httpRequest =
new
HttpPost(httpUrl);
//使用NameValuePair来保存要传递的Post数据
List<NameValuePair> params =
new
ArrayList<NameValuePair>();
//添加需要的参数
params.add(
new
BasicNameValuePair(
"c1"
,
"wm"
));
params.add(
new
BasicNameValuePair(
"c2"
,
"240*320"
));
params.add(
new
BasicNameValuePair(
"c3"
,
"1.0"
));
params.add(
new
BasicNameValuePair(
"c4"
,
"6365T"
));
try
{
//设置字符集
HttpEntity httpentity =
new
UrlEncodedFormEntity(params,
"utf8"
);
//请求HttpRequest
httpRequest.setEntity(httpentity);
//取得默认的HttpClient
HttpClient httpclient =
new
DefaultHttpClient();
//取得HttpResponse
HttpResponse httpResponse = httpclient.execute(httpRequest);
//请求成功
if
(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK)
{
//取得返回的字符串
String strResult = EntityUtils.toString(httpResponse.getEntity());
mTextView.setText(strResult);
parse(strResult);
}
else
{
mTextView.setText(
"请求错误"
);
}
}
catch
(ClientProtocolException e)
{
mTextView.setText(e.getMessage().toString());
}
catch
(IOException e)
{
mTextView.setText(e.getMessage().toString());
}
catch
(Exception e)
{
mTextView.setText(e.getMessage().toString());
}
//设置按键事件监听
Button button_Back = (Button)findViewById(R.id.Button_Back_POST);
/*监听Button的时间信息*/
button_Back.setOnClickListener(
new
Button.OnClickListener()
{
public
void
onClick(View v)
{
/*新建一个Intent对象*/
Intent intent =
new
Intent();
/*指定intent要启动的类*/
intent.setClass(Post.
this
, Http.
class
);
/*启动一个新的Activity*/
startActivity(intent);
/*关闭当前的Activity*/
Post.
this
.finish();
}
});
}
private
List<Mp3Info> parse(String xmlStr)
{
SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
List<Mp3Info> infos =
new
ArrayList<Mp3Info>();
try
{
XMLReader xmlReader = saxParserFactory.newSAXParser().getXMLReader();
MyContentHandler mp3ListContentHandler =
new
MyContentHandler(infos);
xmlReader.setContentHandler(mp3ListContentHandler);
xmlReader.parse(
new
InputSource(
new
StringReader(xmlStr)));
for
(Iterator<Mp3Info> iterator = infos.iterator();iterator.hasNext();)
{
Mp3Info mp3Info = iterator.next();
System.out.println(mp3Info);
}
}
catch
(Exception e)
{
e.printStackTrace();
}
return
infos;
}
}
|
窗体2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
package
Http.View;
import
java.util.List;
import
mars.modle.Mp3Info;
import
org.xml.sax.Attributes;
import
org.xml.sax.SAXException;
import
org.xml.sax.helpers.DefaultHandler;
public
class
MyContentHandler
extends
DefaultHandler
{
private
List<Mp3Info> infos =
null
;
public
MyContentHandler(List<Mp3Info> infos)
{
super
();
this
.infos = infos;
}
public
List<Mp3Info> getInfos()
{
return
infos;
}
public
void
setInfos(List<Mp3Info> infos)
{
this
.infos = infos;
}
private
Mp3Info mp3Info =
null
;
private
String tagName;
public
void
startDocument()
throws
SAXException
{
}
public
void
endDocument()
throws
SAXException
{
}
public
void
startElement(String nameSpaceURI,String localName, String qName, Attributes attr)
throws
SAXException
{
this
.tagName = localName;
if
(localName.equals(
"E"
))
{
mp3Info =
new
Mp3Info();
}
}
public
void
endElement(String nameSpaceURI,String localName, String qName, Attributes attr)
throws
SAXException
{
if
(qName.equals(
"E"
))
{
infos.add(mp3Info);
}
tagName =
null
;
}
public
void
characters (
char
[] ch,
int
start,
int
length)
throws
SAXException
{
String temp =
new
String (ch, start, length);
if
(tagName.equals(
"E1"
))
{
mp3Info.setE1(temp);
}
else
if
(tagName.equals(
"E2"
))
{
mp3Info.setE2(temp);
}
else
if
(tagName.equals(
"E3"
))
{
mp3Info.setE3(temp);
}
else
if
(tagName.equals(
"E4"
))
{
mp3Info.setE4(temp);
}
else
if
(tagName.equals(
"E5"
))
{
mp3Info.setE5(temp);
}
}
}
|