java 生成中文字符乱码,java汉字乱码的原因与解决方法

java 生成中文字符乱码,java汉字乱码的原因与解决方法在基于Java的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号。这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码,故会出现此问题。1、在网页中输出中文。JAVA在网络传输中使用的编码是”ISO-8859-1″,故在输出时需要进行转化,如:Stringstr=”中文”;str=newString(str.get…

大家好,又见面了,我是你们的朋友全栈君。

1c4bd588f855abac0ded9454c12c07af.png

在基于Java的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号。

这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码,故会出现此问题。

1、在网页中输出中文。

JAVA在网络传输中使用的编码是”ISO-8859-1″,故在输出时需要进行转化,如:String str=”中文”; str=new String(str.getBytes(“GB2312″),”8859_1”);

但假如在编译程序时,使用的编码是“GB2312”,且在中文平台上运行此程序,不会出现此问题,一定要注重。

2、从参数中读取中文 这正好与在网页中输出相反如:str=new String(str.getBytes(“8859_1″),”GB2312”);

3、操作DB中的中文问题 一个较简单的方法是:在“控制面扳”中,把“区域”设置为“英语(美国)”。

假如还会出现乱码,还可进行如下设置:

取中文时:str=new String(str.getBytes(“GB2312”));

向DB中输入中文:str=new String(str.getBytes(“ISO-8859-1”));

4、在jsp中的中文解决:

在“控制面扳”中,把“区域”设置为“英语(美国)”.

在JSP页面中加入: 假如还不行正常显示,

则还要进行下面的转换: 如:name=new String(name.getBytes(“ISO-8859-1″),”GBK”);

就不会出现中文问题了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156960.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 用WriteProcessMemory做进程注入 (非DLL注入)

    用WriteProcessMemory做进程注入 (非DLL注入)今天要完成一个项内容,运行另一个应用程序abc.exe,实现它的父进程是explorer.exe。最开始的思路是获得explorer.exe的句柄,用ShellExecute启动abc.exe。但是用explorer.exe的句柄创建的进程的父进程依然是调用和进程,而不是传入句柄的进程。看来直接的不行,只能用间接的了。把运行abc.exe的代码段写到explorer.exe的内存里面去。然后让explorer来运行这段代码。static DWORD CALLBACK ThreadProc()…{    

    2025年9月1日
    6
  • Java实体映射工具:MapStruct

    Java实体映射工具:MapStruct当我们需要进行 JavaModel 之间的拷贝时 或者项目要求 JavaModel 需要严格区分为数据对象 DO 数据传输对象 DTO 和展示对象 VO 的时候 我们就不得不把一个实体中的属性映射到另一个实体中 最简单的做法就是写一个工具类 进行不断的 getter setter 这样虽然能完成要求但却写了很多冗余代码 维护起来相当恶心 所以这个时候就需要一款能自动映射实体属性的工具了 Spring 自带的 BeanUtils 工具类算是一款 但是它却不能自定义映射规则 ModelMapper 也是一款映射工具

    2025年12月7日
    5
  • 同济大学 线性代数 第六版 pdf_【课后习题答案】工程数学线性代数同济第六版+课后习题答案…

    同济大学 线性代数 第六版 pdf_【课后习题答案】工程数学线性代数同济第六版+课后习题答案…资料介绍本次分享资源内容为工程数学线性代数(第六版)课后习题答案教材:工程数学线性代数(第六版)作者:同济大学数学系编出版社:高等教育出版课后习题答案第一章行列式第二章矩阵及其运算第三章矩阵的初等变换与线性方程组第四章向量组的线性相关性第五章相似矩阵及二次型第六章线性空间与线性变换温馨提示:1、资料下载链接如有失效请联系小编获取最新链接!2、声明:上述资料…

    2022年7月25日
    17
  • java线程池 面试题(精简)

    java线程池 面试题(精简)什么是线程池?线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理。如果每个请求都创建一个线程去处理,那么服务器的资源很快就会被耗尽,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。 为什么要使用线程池?创建线程和销毁线程的花销是比较大的,这些时间有可能比处理业务的时间还要长。这样频繁的创建线程和销毁线程,再…

    2022年6月13日
    41
  • linux7 没有dpkg,Linux 系统操作 (7):dpkg 命令

    linux7 没有dpkg,Linux 系统操作 (7):dpkg 命令Linux系统操作(7):dpkg命令文章目录综述:安装命令:查看与搜索命令:删除命令:不太常用的命令:参考文献:综述:广义的Debian是指一个致力于创建自由操作系统的合作组织及其作品,由于Debian项目众多内核分支中以Linux宏内核为主,而且Debian开发者所创建的操作系统中绝大部分基础工具来自于GNU工程,因此”Debian”常指Debian…

    2022年5月21日
    155
  • YUV文件格式[通俗易懂]

    YUV文件格式[通俗易懂]原文:YUV图像格式的博客转:https://blog.csdn.net/armwind/article/details/52190123,文章不错特转载过来备忘一.YUV数据格式的定义和采集方式1)YUV数据格式定义     YUV分为三个分量,“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V”表示的则是色度(Chrominance或Chroma)…

    2022年7月16日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号