`
mfan
  • 浏览: 341148 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

Android以post方式传输中文出现乱码解决办法

 
阅读更多

在Android开发中,以HttpPost方式向服务器上提交中文数据时,如果没有设置传输数据的编码类型,在服务端获取到的数据就会出现乱码。在涉及不同平台上的应用,我们尽量使用UTF-8编码格式传输中文数据,HttpPost方式传输中文指定编码可以参考以下方法:

 

/**

* 向服务端提交数据

*/

public void notesubmit(){

......

......

httpClient = new DefaultHttpClient();

post = new HttpPost(url);

        List<NameValuePair> pairs = new ArrayList<NameValuePair>();

        NameValuePair pair1 = new BasicNameValuePair("title","中文");

        NameValuePair pair2 = new BasicNameValuePair("content","中文");

        pairs.add(pair1);

        pairs.add(pair2);

 

        //以post方式传输数据到服务端

        try {                          

            HttpEntity entity = new UrlEncodedFormEntity(pairs,HTTP.UTF_8);//设置编码,防止中午乱码

            post = new HttpPost(url);

            post.setEntity(entity);                     

            httpClient  = new DefaultHttpClient();

            HttpResponse response = httpClient.execute(post);

//服务端返回的数据

String data = EntityUtils.toString(response.getEntity());

......

......

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (ClientProtocolException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}finally {  

// 释放连接  

httpClient.getConnectionManager().shutdown();  

}

}

 

分享到:
评论
1 楼 a361848954 2015-08-28  
不错~十分实用

相关推荐

    Android Retrofit 中文乱码问题的解决办法

    "Android Retrofit 中文乱码问题的解决办法" Android Retrofit 中文乱码问题是一种常见的问题,在使用 Retrofit 进行网络请求时,中文字符可能会被编码成乱码,从而导致数据传输错误。解决这个问题需要从多方面...

    android POST数据遇到的UTF-8编码(乱码)问题解决办法

    这里我们详细探讨一下如何解决Android POST数据时遇到的UTF-8编码(乱码)问题。 首先,问题的根源在于客户端发送的数据未指定正确的字符编码,导致服务器在接收到数据并尝试以UTF-8格式解码时出现错误。在示例中,...

    android webview模拟网页post操作

    这样可以确保数据在传输过程中不会出现乱码问题。 ### 四、完整的WebView POST请求实现 以下是一个完整的示例代码,展示了如何在Android应用中使用WebView模拟POST请求: ```java import org.apache....

    Android编程向服务器发送请求时出现中文乱码问题的解决方法

    在Android编程中,当应用程序需要向服务器发送包含中文字符的请求时,经常会出现中文乱码的问题。这主要是由于编码格式不一致导致的。本篇文章将详细介绍如何解决这一问题。 首先,我们要理解乱码产生的两个主要...

    客户端GET、POST上传数据

    在Android前端开发中,我们通常使用`HttpURLConnection`或第三方库如`OkHttp`来实现POST请求,将数据以键值对形式封装到请求体中发送。 处理服务器乱码问题是一个常见的挑战,尤其在涉及中文字符时。在GET请求中,...

    android和服务器的URLEncodedUtils乱码编码问题的解决方案

    在Android和服务器交互时,URLEncodedUtils乱码问题主要出现在通过URL参数传递中文数据时,这通常涉及到字符编码不一致的问题。以下是一些关键知识点和解决方案: 1. **字符编码基础**: - UTF-8:一种广泛使用的...

    Android网络编程上传下载postGet请求

    总结来说,Android网络编程涉及到HTTP请求的处理,包括GET和POST的使用,中文乱码的避免,异步HTTP请求的实现,以及文件上传和多线程下载的策略。理解并掌握这些知识点对于开发功能完善的Android应用至关重要。在...

    安卓文件下载上传解压相关-andorid采用post方法把文件传输到自己写的服务器并解决了文件中文编码问.rar

    Java默认使用ISO-8859-1编码,这可能导致中文乱码。解决方案是在读写文件名时指定正确的编码格式,如UTF-8。在发送HTTP请求时,确保设置合适的`Content-Type`,如`application/x-www-form-urlencoded; charset=UTF-8...

    服务器端测试GET、POST

    GET和POST主要用于客户端(如Android前端)与服务器之间的通信,而处理中文乱码问题则是一个额外的技术挑战。 GET方法是HTTP中最基础的请求类型,通常用于获取服务器上的资源。它将参数附加到URL中,以问号(?)...

    android移动互联笔记

    ### Android移动互联知识点详解 ... 在Android移动互联领域,网络编程是一项核心...同时,注意解决乱码问题,确保数据传输的正确性和一致性。通过上述知识点的学习和实践,开发者能够更好地构建出高效、稳定的移动应用。

    火山安卓http读文本不乱码.rar

    当我们在网络上传输文本或从服务器接收文本时,如果编码方式不一致,就可能导致乱码。因此,确保服务器和客户端之间的一致性至关重要。 1. **HTTP请求头设置**:在发送HTTP GET或POST请求时,我们通常需要在请求头...

    andriod 图片上传

    在Android平台上进行图片上传是一项常见的任务,特别是在...通过分析这些代码,你可以更好地理解如何在Android应用中实现图片上传功能,并解决可能出现的中文乱码问题。记得在实际项目中根据需求进行适当的调整和优化。

    一个使用HttpClient调用天气预报接口的例程

    在Android中,如果服务器返回的数据不是UTF-8编码,而使用了GBK,那么在处理文本时需要进行正确的字符编码转换,以防止乱码问题。 5. **源码解析**: - `HttpGet`对象:创建一个HttpGet实例,设置其请求URL,用于...

    java web接收上传文件服务器端示例

    6. **文件编码问题**:在描述中提到,参数传递时中文可能会乱码,但文件不会。这是因为在HTTP请求中,URL编码和表单数据编码不同。文件内容通常不涉及字符编码,而表单数据(包括文件名)可能需要正确设置字符集。在...

    异步网络框架

    `HttpCilent`可能提供了一些便捷的方法来处理这些步骤,例如设置Content-Type来解决乱码问题,可能是通过设置"application/json"或"text/plain"等来确保正确编码。 异步HTTP客户端框架的工作原理通常包括以下步骤:...

    安卓Andriod源码——使用JSON进行网络数据交换(服务端、客户端)的实现.zip

    在Android开发中,网络数据交换是应用程序与服务器通信的关键部分,JSON(JavaScript Object Notation)因其轻量级、易于解析的特性,成为Android应用中常用的数据交换格式。本压缩包"安卓Andriod源码——使用JSON...

    如何将平面控制点导入Google Earth、奥维互动地图及手机奥维互动地图APP里面?.docx

    需要注意的是,如果要在KML文件中使用中文名称,需要将文件编码转换为UTF-8,以防止乱码和加载问题。 生成的KML文件可以直接在Google Earth中打开,只需双击文件或在Google Earth的“文件”菜单中选择“打开”。...

Global site tag (gtag.js) - Google Analytics