作者bass0216 (寻风)
看板AndroidDev
标题[问题] 有关JSP接收手机参数问题
时间Wed Dec 14 17:15:06 2011
JAVA码
String code=cin.toString();
String uriAPI = "
http://XXX.XXX.XXX.XXX:8070/mysql.jsp";
HttpPost httpRequest = new HttpPost(uriAPI);
List <NameValuePair> p = new ArrayList <NameValuePair>();
p.add(new BasicNameValuePair("number",code));
HttpResponse httpResponse = null;
try {
httpRequest.setEntity(new UrlEncodedFormEntity(p,HTTP.UTF_8));
httpResponse = new DefaultHttpClient().execute(httpRequest);
以下省略
}
JSP
String number =request.getParameter("number");
如果我在网页上打
http://XXX.XXX.XXX.XXX:8070/mysql.jsp?number=XXXXXXX的话
是可以在网页上看到结果
可是当我用模拟器测试时候
却发现无法接收从手机传送的参数(也就是number)
是因为编码问题吗?
网路确定有开启
恳请各位指教QQ...
我尝试显示传送进去的数字
在网页的网址上 我只要打NUMBER=123
网页也会显示123
但是在手机上就是乱码 囧...
出现啥android.widxxxx = =
out.println(number);
我是用这样的输出方式
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.34.219.175
1F:→ bass0216:对了 我的参数是数字不是字元... 12/14 17:30
2F:→ bass0216:似乎知道问题点了 手机传过去的值似乎变成乱码... 12/14 20:53
3F:→ bass0216:不过我该用哪种编码呢? 12/14 20:53
4F:→ bass0216:目前我只传数字... 12/14 20:53
5F:→ tn00364477:你不是已经用utf_8了吗@.@? 12/14 20:59
6F:推 nvidia:传数字怎麽会是乱码 12/14 20:59
※ 编辑: bass0216 来自: 114.34.219.175 (12/14 21:14)
※ 编辑: bass0216 来自: 114.34.219.175 (12/14 21:19)
7F:→ blueoick:出现啥android.widxxxx <=这应该不是乱码吧... 12/14 22:42
android.widget.EdidText@405"XXXXX"
X那边都是乱码 而前面的那些我也不知道怎会出现= =
如果有需要完整程式码的话 我可以个PO上
现在就是单纯"网页"上可以显示正常数字 但是传回手机就是变成上面那样-.-...
8F:推 qrtt1:把你的例子,弄到最小,并且可以reproduce再来问吧。 12/14 22:44
※ 编辑: bass0216 来自: 114.34.219.175 (12/14 22:53)
9F:→ qrtt1:要印 number.getText() 吧,你印 widget 做什? 12/14 22:56
10F:→ bass0216:楼上大大是指说jsp那边修改吗? 12/14 23:05
其实我目前是想做一个从手机输入
接着传送到WEB-SERVER再传回手机显示
因为我在做资料库查询时
发现传送过去的参数好像不对
所以想做这个来测试一下= =
没想到这个也会失败
※ 编辑: bass0216 来自: 114.34.219.175 (12/14 23:08)
11F:推 qrtt1:你 android 传的时候就不对了。你把 widget instance 转成 12/14 23:14
12F:→ qrtt1:字串直接给 jsp 了吧。 12/14 23:14
13F:→ qrtt1:你用 debugger 观察一下是不是这样。 12/14 23:14
14F:→ bass0216:final EditText cin = (EditText)findViewById(R.id.edit 12/14 23:20
15F:→ bass0216:Text1); 过去 把输入格里面的文字传过去 应该是不会发生 12/14 23:21
16F:推 qrtt1:String code=cin.toString();这行就错了吧。用『debugger』 12/14 23:33
17F:→ qrtt1:好好地检查它的内容。 12/14 23:33
18F:→ bass0216:好的 我看看 12/14 23:42
19F:→ bass0216:p.add(new BasicNameValuePair("number",code)); 12/14 23:43
20F:→ bass0216:但是这行需要我传STRING过去... 12/14 23:44
21F:→ bass0216:感谢 已完成 cin.getEditableText().toString(); 12/14 23:54
22F:推 nvidia:你要不要先把JAVA API看熟 12/15 05:17