首页 > 编程知识 正文

javaweb配置eclipse,eclipse输出中文乱码

时间:2023-05-04 19:06:17 阅读:28089 作者:4168

创建新项目或导入项目时经常出现的问题:

1 .导入项目后,Java文件用中文乱码了

项目右键----properties----resource (快捷键Alt Enter )在文本文件编码中默认编译语言为GBK,源项目所需的编译语言为中文乱码通常是utf-8。 该方法修正了该项目的编译语言。

使用菜单中的File--Properties时,Resource将设置eclipse的默认编程语言。

仅供参考,https://blog.csdn.net/ordinaryprogrammerc/article/details/83013710

2 .在Java web项目中运行jsp文件时用中文乱码

这是因为,在创建新的. jsp文件时,缺省情况下如果字符集的格式为ISO-8859-1,则会发生中文乱码。

解决方案创建index.jsp文件时,将字符集更改为UTF-8,网页上显示的pageEncoding=UTF-8 .如下图所示。

解决方法2 :

将高级窗口——首选项3354常规—— workspace —— textfile编码更改为other选项,然后设置所需的编码格式。

Eclipse窗口—— preferences 3354 content type —— text —— JSP显示需要Defalut encoding的编码格式。

解决方法3 :

修改tomcat/爱情果汁/catalina.sh文件,在JAVA_OPTS变量后添加以下参数: - dfile.encoding=utf8-dsun.jnu.encoding=utf8,然后重新启动tomcat。

3 .代码格式简化

字符编码发展简史: https://blog.csdn.net/dk _ 0520/article/details/70157426

概括地说:

)1)计算机是在美国发明的,他们的语言是英语,所以计算机代码也使用英语字符。 也就是说,第一个ASCII (美国信息交换标准代码)是7位,可以编码27=128个字符。

)随着计算机的发展,人们填写了横线、竖线等符号,因此128-255被称为“扩展字符集”。

)计算机发展到中国,中国人为了输入汉字进行了新的编码,留下了ASCII的前127个字符后,继续用2字节进行编码,到ASCII原来的数字、标点符号、字母为止都是2字节长的编码这就是人们常说的“全角”字符,原本127号以下的字符称为“半角”字符,这就是GB2312

)4)延续扩展后的代码体系称为GBK标准,GBK包含了GB2312的全部内容,同时增加了近20000个新汉字(包括繁体字)和符号。 后来少数民族也开始用电脑了,我们进一步扩展,增加了几千个新的少数民族字,GBK扩展到了GB18030。

)后来,由于当时各国像中国一样制定了自己的编码标准,彼此都不知道谁的编码,谁也不支持别人的编码。 此时,国际标准化组织(ISO )决定着手解决这个问题。 他们采用的方法很简单。 废除所有地区代码方案,重新制作包含地球上所有文化、所有文字、符号的代码! 他们打算把它称为“通用多任务操作系统”,简称UCS,俗称“通用码”。

(6) UNICODE到来时,走到一起的还有计算机网络的兴起,也是UNICODE如何在网络上传输必须考虑的问题。 因此,出现了面向传输的很多utf(UCStransferformat )标准。 UTF8是每传输8位的传输数据,而UTF16是每传输16位,然而仅仅用于传输中的可靠性

字符集格式从: ISO8859-1更改为UTF-8为什么不会出现中文乱码?

ISO8859-1是单字节码,因此可显示的字符范围最多为0-255,适用于英语系列。 例如,字母a的代码为0x61=97。

很明显,iso8859-1代码表示的字符范围很窄,不能表示中文字符。 但是,它是一个字节码,与计算机最基本的显示单元相匹配,因此通常用iso8859-1代码显示。 而且,在很多协议中,默认情况下使用这个代码。 例如,“中文”字符中不存在iso8859-1代码,但以gb2312代码为例,应该是“d6d0 cec4”字符,使用iso8859-1代码时将其分解为4字节进行表示。 “d6d0 cec4”(另一方面,在UTF编码的情况下为6字节“e4 b8 ad e6 96 87”。 很明显,这种表示方式必须基于另一种代码。

UTF字符集考虑到unicode编码与iso8859-1编码不兼容,容易占用大量空间。 这是因为对于英文字母,unicode也需要用2个字节表示。 因此,unicode不容易传输和存储。 结果,生成了utf编码。 utf编码与iso8859-1编码兼容,也可用于表示所有语言的字符。 但是,utf编码是不定长度编码,每个字符的长度从1-6字节开始不同。 此外,utf代码具有简单的检查功能。 一般来说,字母由一个字节表示,汉字使用三个字节。

请注意,尽管utf用于使用更少的空间,但对于unicode代码,如果知道它是汉字,则使用GB2312/GBK无疑是最节省的。 另一方面,utf代码对汉字使用3个字节,但对于汉字页面,utf代码也比unicode代码更节约。 这是因为网页包含很多英语字符。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。