android post方式提交中文数据到服务器乱码问题

问题描述

android post方式提交中文数据到服务器乱码问题
Android端代码

                AsyncHttpClient client = new AsyncHttpClient();                //URLEncoder.encode(categoryutf-8"");                  RequestParams params = new RequestParams();                if(path1!=null){                    file1=new File(path1);                }                if(path2!=null){                    file2=new File(path2);                }                params.put(""shopname"" proname);                params.put(""description"" description);                params.put(""price"" proprice);                params.put(""userphone""usernum);                params.put(""category"" category);                client.post(url params new AsyncHttpResponseHandler(){                    @Override                    public void onSuccess(String content) {                        // TODO Auto-generated method stub                        super.onSuccess(content);                        if(content.equals(""发布成功"")){                            Toast.makeText(homepage.this content 0).show();                            name.setText("""");                            price.setText("""");                            number.setText("""");                            intro.setText("""");                        }else{Toast.makeText(homepage.this发布失败"" 0).show();}                    }                });

服务器端代码:

                if(ServletFileUpload.isMultipartContent(request)){                try{                    ServletFileUpload upload = new ServletFileUpload(                            new DiskFileItemFactory());                    List<FileItem> items = upload.parseRequest(request); // 解析请求                    int size = items == null ? 0 : items.size();                    for (int i = 0; i < size; i++) {                        FileItem item = (FileItem) items.get(i); // 获取方法消息体中的每一段内容。                        if (item.isFormField()) {// 如果是普通表单项目                            if (item.getFieldName().equals(""shopname"")) {                                shop.setShopname(new String(item.getString().getBytes(""ISO8859-1"")UTF-8""));                            }  else if (item.getFieldName().equals(""description"")) {                                shop.setDescription(new String(item.getString().getBytes(""ISO8859-1"")UTF-8""));                            } else if (item.getFieldName().equals(""price"")) {                                shop.setPrice((df.format(Double.valueOf(item.getString()))));                            } else if (item.getFieldName().equals(""userphone"")) {                                shop.setUserphone(item.getString());                            } else if (item.getFieldName().equals(""category"")) {                                shop.setCategory(new String(item.getString().getBytes(""ISO8859-1"")UTF-8""));                                a=new String(item.getString().getBytes(""ISO8859-1"")UTF-8"");                            }/*else if (item.getFieldName().equals(""picture"")) {                                shop.setPicture(new String(item.getString().getBytes(""ISO8859-1"")UTF-8""));                            }else if(item.getFieldName().equals(""picture1"")){                                shop.setPicture1(new String(item.getString().getBytes(""ISO8859-1"")UTF-8""));                            }*/else if(item.getFieldName().equals(""userid"")){                                shop.setUserid(Integer.parseInt(new String(item.getString().getBytes())));                            }

为啥我用jsp提交中文不乱码,Android提交乱码呢,我用了android-async-http-1.4.4.jar包,post方式提交数据到服务器的,求解决,大神快来吧,我才接触Android,谢谢啦

解决方案

双方统一编码合适就行了,比如utf8

解决方案二:
android 通过getpost方式提交数据给服务器
get和post方式提交乱码问题
解决表单Post方式提交的中文乱码问题

解决方案三:
params需要编成utf-8码

解决方案四:
http://blog.csdn.net/u011596810/article/details/45793017
看看这个有没有帮助

解决方案五:
客户端和服务器端发送和接受数据的编码格式要一致

解决方案六:
编程是一种美德,是促使一个人不断向上发展的一种原动力。

解决方案七:
客户端与服务端使用的编码不致吧;
服务端用的是Tomcat还是什么?

解决方案八:
坚持打代码,是一种习惯。

时间: 2024-11-08 17:26:12

android post方式提交中文数据到服务器乱码问题的相关文章

post请求-Android post方式上传数据给服务器

问题描述 Android post方式上传数据给服务器 做了一个小例子.Tomcat服务器发布Server.然后在Android手机上用httpurlconnection连接服务器.用post方式上传数据.有个问题很怪.在公司测试的时候没有任何问题.但是到家里运行,链接返回的状态码一直是404.在公司和家里的区别就是公司是局域网IP,在家里我是用的无线路由器自动分配的IP.地址192.168.1.100.我用手机浏览器都能访问到tomcat网站.但是就是post不了数据.各位大侠谁了解,指点一下

编码-iOS开开发 post 的方式提交 中文字符串 后台显示乱码

问题描述 iOS开开发 post 的方式提交 中文字符串 后台显示乱码 NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000); [_abbreviationBtn.titleLabel.text dataUsingEncoding:enc]; NSString *string = [[NSString alloc]initWithData:[_abbrevi

android web页面提交大数据为什么不会崩溃?

问题描述 android web页面提交大数据为什么不会崩溃? 50张图片转base64后拼接, 以post方式提交服务器, 这种方式在app端会因为内存溢出崩溃, 为什么在微信web(公众号页面)页面上传不会崩溃, 有大神知道吗?急求答案!! 解决方案 你是一次性上传的? 微信可能是分开分批次上传的!!

javaweb-spring mvc接收不到put方式提交的数据

问题描述 spring mvc接收不到put方式提交的数据 在做修改的时候,提交的方式是put请求,然后spring mvc中的一个方法处理请求,接收参数是一个实体bean,但是这个接收参数就是接收不到提交的数据不知道除了过滤器能解决还有什么办法没有? 解决方案 spring MVC 接收PUT方式请求关于HTTP提交方式之PUT让spring mvc支持put请求 解决方案二: 假设方法为,接受的参数为User实体类 public void Test1(){} 第一种方式为: public v

SQL Server插入中文数据后出现乱码

原文:SQL Server插入中文数据后出现乱码 今天在做项目的过程中遇到如标题的问题,情况如下图: 数据库使用的是SQL Server2012版本,创建表的脚本如下: CREATE TABLE [dbo].[Type](  [TypeId] INT NOT NULL PRIMARY KEY,     [TypeName] NVARCHAR(50)NOT NULL,     [Description] NVARCHAR(255) NULL,     [CategoryId] INT NOT NU

IE6下form 设置属性 target=&amp;amp;quot;_blank&amp;amp;quot; 后以post 方式提交后数据为空,并且发现请求方式post已经变成了get

问题描述 还请各位大虾点解 问题补充:没说清楚,我使用的是IETest.这个是IETest的bug... 解决方案 测试IE时,最好使用原生IE程序.包括IE6,IE7,IE8.不用使用兼容模式.一是,有的bug测试不出来:二是,可能因为这个不是原生程序造成对你的误判.target="_blank"主要还是浏览器识别的吧.跟后台服务器没有关系.你是怎么传参数的?解决方案二:检查是否有html的元素name属性为form或者tags的解决方案三:target="_blank&q

Android 通过Get/Post提交请求数据到服务器

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 8

Spring MVC表单提交中文数据出现乱码

原文:http://bigcat.easymorse.com/?p=474 项目中用的是spirng mvc3.0.2.RELEASE版本,涉及到中文表单数据的提交.之前blogspring解决中文乱码问题解决了中文表单数据出现乱码的问题,这次索性把配置文件copy过来,运行项目测试了一下,还是乱码.更改了fiilter顺序,问题依然存在,google了一下,按照文档中的说法将encoding的值改为了UTF-8,问题解决了.顺便贴一下配置文件: <filter>      <filte

急救:jsp向mysql数据库中插入中文数据时是乱码

问题描述 mysql当初安装的时候采用的编码是utf-8我建立的数据库编码是gbk_chinese_ciJSP文件:<%@pagelanguage="java"contentType="text/html;charset=GBK"%><html><head><title>编码问题</title><metahttp-equiv="Content-Type"content="