问题发生在两个系统之间,一个系统的编码为utf-8,另一个系统的编码为gbk,utf-8系统调用gbk系统的webservice,其中有个参数为中文,可想而知,参数到达gbk系统时肯定为乱码。用代码模拟如下:
String gbk = "2014.7月提前挂账";
String remark = new String(gbk.getBytes("utf-8"), "gbk");
现需要把remark给重新转为中文,我采取的方法是:
remark = new String(remark.getBytes("gbk"), "utf-8");
这种情况下会出现一种问题,就是当传过来的中文偶数个时能成功转为中文,当为奇数个时会出现部分乱码(乱码的部分一般以?形式出现)。具体是什么原因可以自行百度,无非是因为gbk编码每个中文占用两个字节而utf-8一个中文占用三个字节,以gbk转到utf-8出现丢失字节而导致部分乱码。
网上查了各种方法都无法解决,最后采取的解决方法是:utf-8编码的系统在传中文参数之前先encode一下,java.net.URLEncoder.encode(remark, "utf-8"); gbk系统在接收到参数之后decode一下就可以取到正常的中文了,remark = java.net.URLDecoder.decode(remark, "utf-8");
相关推荐
Java和C++之间进行Socket通信时,可能会遇到乱码问题,主要是由于编码格式不一致导致的。Java默认使用UTF-8编码,而C++在Windows XP环境下可能使用GBK编码。解决这个问题的关键在于确保数据在传输过程中保持正确的...
JAVA 中文乱码问题是开发过程中常见的问题之一,解决这个问题需要了解乱码产生的原因,然后对症下药。下面我们对容易产生乱码问题的场景进行分析,并提出解决方案。 1. 以 POST 方法提交的表单数据中有中文字符 在...
### MySQL中文乱码问题解决方案 在使用MySQL的过程中,中文乱码问题是常见的问题之一,尤其是在数据库初始设置不当时,更容易出现此类问题。本文将详细介绍如何彻底解决MySQL中的中文乱码问题。 #### 一、理解中文...
本篇文章将深入探讨如何解决Servlet中的中文乱码问题,以及如何在GBK、UTF-8和ISO-8859-1之间做出合理的选择。 首先,我们需要了解字符编码的基本概念。GBK是中国大陆广泛使用的中文字符集,包含了大部分中文字符;...
在JSP页面中调用JavaScript进行弹窗提示时出现乱码问题是一种常见的现象。这种情况通常发生在需要显示中文或其他非ASCII字符的情况下。本篇文章将深入探讨该问题的原因,并提供一系列解决方案。 #### 代码示例分析 ...
本文将深入探讨如何利用IHttpModule来解决输入中文地址时出现的乱码问题。 ### 解决方案背景 在早期的Web服务器环境下,例如基于Windows Server 2003的IIS 6.0,用户可能会遇到中文URL地址在传输过程中被错误编码...
WebService是一种基于网络的、独立于平台的应用程序接口(API),它允许不同系统之间通过标准协议(如SOAP,简单对象访问协议)进行通信。PHP可以方便地创建WebService,而C#则可以作为客户端来消费这些服务。 在C#...
通常,乱码问题源于文件的字符编码不匹配,例如本地编辑器与SVN服务器之间使用的编码不同,或者文件本身包含了非标准字符。解决这个问题需要对字符编码有深入的理解,并可能涉及到文件编码转换。 描述中提到,用户...
其中,WebService作为一种常见的远程服务调用方式,在不同语言之间进行交互时扮演着重要的角色。对于使用C++ Builder(简称BCB)进行开发的工程师来说,掌握如何调用WebService接口以及处理可能遇到的问题是必不可少...
再来谈谈PHP与操作系统之间的编码问题。在Windows环境下,PHP函数处理UTF-8编码的参数时可能出现错误,如`move_uploaded_file()`等。这是因为Windows系统默认不支持UTF-8编码的文件名。为解决此问题,可以使用`mb_...
本文将深入探讨如何解决在PHP调用Python脚本时遇到的乱码问题。这个问题涉及到字符编码、命令行参数传递以及不同编程语言之间的数据交换。 首先,我们要理解Python3和PHP对字符编码的处理方式。Python3默认使用UTF-...
在这个“易语言转换乱码模块”中,我们主要关注的是如何处理和解决编码问题,尤其是针对文本数据在不同编码格式之间转换时可能出现的乱码问题。 乱码通常出现在当程序以一种编码读取或写入文本,而该文本实际采用的...
### 乱码算法详解 #### 一、引言 在互联网使用过程中,...通过理解和掌握这些编码算法,可以更好地应对在网络通信中遇到的乱码问题。此外,对于有兴趣进一步研究编码算法的朋友来说,本文也提供了一个良好的起点。
为了确保PHP与MySQL之间的数据交互不会出现乱码问题,还需要进行以下几个方面的设置: - **修改MySQL配置文件**:编辑`my.ini`或`my.cnf`文件,设置MySQL的默认字符集为`utf8`,示例配置如下: ```ini [mysql] ...
解决这个问题的关键在于确保Java应用和操作系统之间的一致性。 1. **设置系统编码**:在启动Java应用时,可以通过`-Dfile.encoding=UTF-8`命令行参数设定JVM的默认编码为UTF-8,确保与Linux系统的编码一致。 2. **...
OPC是工业自动化领域的一种标准接口,用于不同系统之间交换数据,如PLC(可编程逻辑控制器)、SCADA(监控与数据采集系统)和HMI(人机界面)。由于这些系统可能来自不同的供应商,OPC提供了一种统一的方式来处理...
### phpMyAdmin 2.6以上版本数据乱码问题解析及解决方案 #### 问题背景 在使用phpMyAdmin 2.6及以上版本管理数据库时,可能会遇到中文数据出现乱码的情况。这一问题主要出现在通过phpMyAdmin界面进行数据查询时,...
在IT行业中,Web服务是一种广泛使用的通信协议,它允许不同应用程序之间进行数据交换。Xfire是一款曾经流行的开源Java框架,用于构建和消费Web服务。在本文中,我们将深入探讨Xfire调用Web服务时遇到的参数传递问题...
标题 "myeclipse乱码" 描述的问题主要集中在Myeclipse集成开发环境中控制台显示中文乱码的现象。...在实际工作中,了解并掌握不同工具和系统之间的编码差异,有助于快速定位和解决问题,提高开发效率。
本主题将详细探讨如何通过API(应用程序接口)来实现VB程序中的简繁体自动转换,以及解决在不同语言环境下可能出现的乱码问题。 首先,我们要理解字符编码的基础知识。在计算机中,每个字符都有一个对应的数字编码...