Android获取servlet也许struts响应的特定参数

Android获取servlet或者struts响应的特定参数
本帖最后由 u014041041 于 2014-03-29 10:13:17 编辑
最近在研究android访问本地服务器获取servlet中的数据。
访问成功了,但是我想要特定的数据,什么意思呢?
我的servlet端写的是这样的:

request.setCharacterEncoding("utf8");
        String name = "张三";
        String password = "123";
        response.setContentType("text/html");
     response.setCharacterEncoding("utf8");
        PrintWriter writer = response.getWriter();
        writer.write("用户名是:"+name+"<br/>");
        writer.write("密码是:"+password);
        writer.close();


我的android端获取数据是这么写的:

        String urlPath = "http://10.0.2.2:8080/testServlet/LoginServlet";
HttpPost httpRequest = new HttpPost(urlPath);
HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);
HttpEntity httpEntity = httpResponse.getEntity();
String str = EntityUtils.toString(httpEntity,"utf-8");
Log.i("HttpEntityToString:",str);

所以现在我的返回结果是str
str的值是这样的: 用户名是:张三<br/>密码是:123

但是我想要的str的结果是只要servlet中的name和password两个变量,而不是writer里写的所有数据,还包括了
<br/>,“用户名是:”,“密码是:”


这些多余的东西我不需要,而我又不想在servlet里改writer中的东西,
也就是问有没有什么对象或者方法可以直接获取到servlet响应的参数?
我想要找到类似键值对一样的方法,在安卓代码中通过类似

response.getParameter("name");
response.getParameter("password");

就可以直接获得“张三”和“123”两个值。
我想我应该问的很明白了吧?

补充:
其实我是想实现一个功能,后台servlet或者struts返回给前台一个json格式的字符串,比如说后台有很多用户名和密码,后台经过处理后把所有的用户名和密码通过json格式拼接起来然后返回给前台jsp,jsp通过其他技术比如ajax或者easyui来解析这个json格式的字符串获得用户名和密码。
而我的安卓客户端也想这样实现,就是只要那个返回的json字符串,然后安卓拿到以后也通过键值对的方式去获取这个json数组中的用户名和密码,不要其他的网页标签啊什么的东西。
------解决方案--------------------
用jsoup,人家封装好的包,直接可以解析HTML,有类似getElementById()的方法。
先去看看百度百科:
http://baike.baidu.com/link?url=YW474obqaxWnvDdHdScerYW9xdfvnpkfAERlfpg6YGBSBuAsiKYZac5yjGnZ8DO0VeWoacEVOWZeqh7yBeD0W_
然后去下载一下相应的jar包,有API文档的。