- 浏览: 47934 次
- 性别:
- 来自: 南京
文章分类
最新评论
String newStr = new String(oldStr.getBytes(), "UTF-8"); java中的String类是按照unicode进行编码的,当使用String(byte[] bytes, String encoding)构造字符串时,encoding所指的是bytes中的数据是按照那种方式编码的,而不是最后产生的String是什么编码方式,换句话说,是让系统把bytes中的数据由encoding编码方式转换成unicode编码。如果不指明,bytes的编码方式将由jdk根据操作系统决定。 当我们从文件中读数据时,最好使用InputStream方式,然后采用String(byte[] bytes, String encoding)指明文件的编码方式。不要使用Reader方式,因为Reader方式会自动根据jdk指明的编码方式把文件内容转换成unicode 编码。 当我们从数据库中读文本数据时,采用ResultSet.getBytes()方法取得字节数组,同样采用带编码方式的字符串构造方法即可。 ResultSet rs; bytep[] bytes = rs.getBytes(); String str = new String(bytes, "gb2312"); 不要采取下面的步骤。 ResultSet rs; String str = rs.getString(); str = new String(str.getBytes("iso8859-1"), "gb2312"); 这种编码转换方式效率底。之所以这么做的原因是,ResultSet在getString()方法执行时,默认数据库里的数据编码方式为 iso8859-1。系统会把数据依照iso8859-1的编码方式转换成unicode。使用str.getBytes("iso8859-1")把数据还原,然后利用new String(bytes, "gb2312")把数据从gb2312转换成unicode,中间多了好多步骤。 从HttpRequest中读参数时,利用reqeust.setCharacterEncoding()方法设置编码方式,读出的内容就是正确的了。 转:http://www.blogjava.net/rabbit/archive/2008/03/27/189009.html
发表评论
-
Non-terminating decimal expansion; no exact representable decimal result
2015-05-20 09:46 874异常信息:Non-terminating decimal ex ... -
java中静态代码块的用法 static用法详解
2013-06-18 17:14 803(一)java 静态代码块 ... -
java中的native关键字
2013-06-18 14:35 899JNI是Java Native Interface的 缩写。从 ... -
Java fina 方法和类
2013-06-18 14:34 858final方法 将方法声明为final那有两个原因: ... -
Java transient关键字
2013-06-18 14:33 832java关键字Transient 转自http:/ ... -
Java Assert使用
2013-06-14 14:01 1301主要总结一下在eclipse中如何使用断言。 (一)首先明确 ... -
Java中接口的使用方法简介
2013-06-14 13:48 2339接口申明必须有interface ... -
堆和栈的区别
2013-06-14 12:50 791堆和栈的区别 栈与堆 ... -
HashSet详解:不能重复(对象的哈希代码一样),无序
2012-09-27 16:05 1251HashSet中不允许有重复的元素。例如: Set hash ... -
java i++和++i
2012-08-28 10:30 729//i++是在一个先使用后加1,即先使用i的值,后让i+1 ... -
java 可变长参数
2012-08-15 17:08 892有时候,我们传入到方法的参数的个数是不固定的,为了解决这个问题 ... -
java发邮件包commons-email-1.0.jar
2012-07-26 16:11 919java发邮件的包commons-email-1.0.jar -
获取图片的宽和高 java
2012-07-26 16:09 970有两种要考虑的情况: 一种是:(图片在本地可以预览到),方法如 ... -
java 值传递和引用传递
2012-07-26 14:52 1128class Demo{ private static i ... -
java面试题解惑 之 多线程(转)
2012-07-20 15:25 10311,多线程 线程或者说 ... -
java定时器应用举例
2012-07-20 14:32 766package myThread; import jav ... -
Java中的IO整理完整版(二)
2012-07-12 16:41 641BufferedReader的小例子 注意: Buffere ... -
Java中的IO整理完整版(一)
2012-07-12 14:22 780【案例1】创建一个新文件 import java.io.*; ...
相关推荐
字符编码问题在Web开发中非常常见,但通过正确的设置和处理,可以有效地避免这些问题。了解HTTP头部字段的作用,以及如何在客户端和服务器端处理字符编码,对于开发国际化的Web应用至关重要。 通过本文的详细介绍,...
### Java 字符编码详解 #### 一、Java 字符编码基础概念 ...正确的字符编码管理不仅可以避免乱码问题,还能提高程序的健壮性和可维护性。希望本文能帮助开发者们更好地理解和处理 Java 中的字符编码问题。
在日常的网页开发过程中,经常会遇到字符编码导致的乱码问题。本文将结合实践经验,深入探讨不同情况下乱码产生的原因,并提出相应的解决方案。 #### 一、理解字符编码的基础概念 首先,我们需要明确几个基本概念...
在使用Lucene时,可能会遇到字符编码问题,这通常是由于不同系统或程序之间处理字符集的方式不一致导致的。下面将详细探讨Lucene中的字符编码问题及其解决方案。 首先,我们要理解什么是字符编码。字符编码是将字符...
不正确的字符编码处理可能导致数据丢失、乱码甚至是程序异常。本文将深入探讨Java中的字符编码问题,并提供一些实用的解决方案。 #### 二、Java中的字符编码基础 Java本身采用的是Unicode编码系统,这是一种国际化...
JAVA 中文字符编码问题详解 在 JAVA 中,中文字符编码问题一直是让人头疼的问题,特别是在 WEB 应用中。网上的分析文章和解决方案都很多,但总是针对某些特定情况的。本文将详细解释 JAVA 中文字符编码问题的根源,...
Java网络传输中的字符编码问题主要涉及到Java编程语言在处理不同编码格式时的转换和兼容性。Java语言本身采用Unicode字符集,这是一种国际化的标准,能够支持世界上大多数语言,包括中文。然而,在实际的网络环境中...
过滤器代码--解决jsp中的字符乱码问题,可以让你不在为字符的乱码担心。
在J2EE项目中,通过在Servlet过滤器中设置统一的字符编码,并在`web.xml`配置文件中进行相应的注册和配置,可以有效解决因字符编码不一致而导致的乱码问题。这种方式不仅提高了代码的可维护性,也确保了系统的稳定性...
.中间件字符乱码问题.pdf
.中间件字符乱码问题.docx
文档中主要介绍了各类字符集以及相关的字符编码,字符的显示原理,从输入到显现的整个过程,程序中出现的乱码问题以及解决方案
在Spring MVC框架中,字符编码问题是一个常见的挑战,尤其是在处理多国语言或者用户输入的数据时。"MySpringMVC-字符乱码处理.rar"这个压缩包文件很可能包含了关于如何在Spring MVC项目中解决字符乱码问题的相关资料...
关于解决字符乱码问题及对ucGUI底层实现字符显示的浅析 pdf
字符编码是计算机处理文本的关键,尤其在多语言环境中,正确的编码解决方案显得尤为重要。本文主要针对C++编程中遇到的乱码问题,从编码原理、Unicode的意义出发,详细讲解了四个典型场景下的乱码问题及其解决方案。...
在Java Servlet规范中,提供了`SetCharacterEncodingFilter`这样的过滤器,用于确保请求参数和响应内容的正确编码,避免因为编码不一致导致的数据乱码问题。 1. **字符编码的重要性** 在网络通信中,字符编码扮演...
标题中的“字符编码”指的是计算机系统中用于表示文本的编码方式。...通过阅读这个文档,开发者可以学习如何在Java环境中有效地管理和处理字符编码,避免常见的乱码问题,从而提高应用程序的兼容性和用户体验。
UltraEdit引出的字符编码问题.doc
通常,这类文件会解释命令行参数、转换过程中的错误处理以及如何解决编码不兼容导致的乱码问题。 在实际工作中,字符编码问题可能导致数据丢失、显示异常等问题。因此,理解不同编码之间的差异,以及如何使用工具...
在实际项目中,通过这种方式配置的过滤器可以有效避免由字符编码引起的乱码问题。比如,在一个涉及多语言用户的电子商务平台中,用户可能来自不同的国家和地区,他们提交的数据也可能包含多种语言文字。通过上述配置...