博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从本机发送信息到另一台服务器上时中文乱码
阅读量:6327 次
发布时间:2019-06-22

本文共 3175 字,大约阅读时间需要 10 分钟。

hot3.png

从本机发送信息到另一台服务器上时中文乱码

别的电脑都没问题,只有本机通过sts开tomcat并发送信息到另一服务器时中文乱码。

先说我的解决办法:(一开始的解决办法:删掉原来的workspace换个新的)后来想了下原因,把workspace编码改成与项目一致的编码,果然就正常了。如:我改成gbk后中文显示正常了

下面是排除问题过程:

1.以为是tomcat编码的问题,后来重装了tomcat发现不是,

2.以为是代码有问题,打包给别的电脑用没问题,

3.觉得是sts的问题,把sts删了,重新装一个,发现也不是,

4.再后来觉得是jdk版本的问题,换了个新版本发现不是。

后来把打包好的war包放到tomcat目录下直接启动,发现没问题。其实这一步骤就排除了tomcat、jdk的问题了,之前没想到。

既然上面的都不是,那到底是哪里有问题,又想了很久后突然发现当时删除sts的时候没有把workspace删了,用的还是之前那个workspace,然后删了之后换一个workspace果然没问题了!

后来找了下原因,看到下面这篇文章才知道是workspace编码改动后导致的。

——————————————————————————————————————————

下面参考:http://blog.sina.com.cn/s/blog_aee312bf0101e1io.html

在网上看到这篇文章才知道原来真的是workspace的编码改动导致的问题,

由于我根据我的下篇文章《教你解决svn比较时中文乱码的问题》改动了workspace的编码,虽然svn是可以正常显示中文了,但是由于项目是使用gbk编写,导致这个中文乱码问题。

 

关于编码:

在Myeclipse导入一个项目,有中文乱码问题,解决方法如下:

一、将整个project设置编码UTF-8UTF-8可以最大的支持国际化)

windows->Preferences->general->Workspace->Text file encoding->Other框中的Text file encoding改为UTF-8

二、java源文件编码设置为UTF-8.

windows->Preferences->general->Context Types->Text,选择Java Source File,在下面的Default encoding输入框中输入UTF-8,点Update,则设置Java文件编码为UTF-8

 

一、设置新建常见类型文件的默认编码格式,也就是文件保存的格式。

在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。
在简体中文系统下,ANSI 编码代表 GBK编码;在日文操作系统下,ANSI 编码代表 JIS 编码。
Window-->Preferences-->General -->content Types
在右侧窗口中展开每一个子项,依次输入编码格式,如“UTF-8”点击“update”就设置好了。
例如:在以上设置中,设置jsp默认编码格式为“UTF-8”,那么以后新建的jsp文件,都是以“UTF-8”的格式保存的。
同样设置java默认编码格式为“UTF-8”,那么以后新建的java文件,都是以“UTF-8”的格式保存的。
设置html默认编码格式为“UTF-8”,那么以后新建的html文件,都是以“UTF-8”的格式保存的。
 以上设置了文件的保存编码格式,默认的打开方式(解码方式)会跟保存编码格式一样。   

 

二、设置新建其他文件的默认编码格式,即文件保存格式。

    在第一项设置中,只是设置了常用文件类型的编码格式。如果新建一个文件,没有后缀名,也就是不指名文件类型,那么MyEclipse无法判断该用何种编码格式保存,就用操作系统默认文件保存编码格式GBK进行保存。这个默认保存编码格式,可用如下方法修改:
window-->preferences-->general-->workspace 在右侧 Text file encoding ->Other    选择UTF-8

 

三、单个文件查看编码格式(也就是打开文件用的编码格式)更改。

这个方法没有更改文件的编码格式,只是告诉MyEclipse用何种编码格式进行解码。

在要查看的文件上,如文件Test.java上右键-->Properties-->Resource在右侧Text file encoding ->Other,可以进行修改。
比如说,你在“一”里面设置*.java文件的编码格式为“UTF-8”,那么你打开后缀名为java的文件,默认就会以“UTF-8”格式进行解码。如果有人给了你一个编写好的java文件,但是他是用GBK编码保存的,那么你现在打开的时候,会显示乱码。在这个文件上右键-->Properties-->Resource在右侧Text file encoding ->Other ->GBK,就可以正常显示里面的内容了。

 

四、单个工程workspace默认编码设置。

在工程上右键-->Properties-->Resource在右侧Text file encoding ->Other,可以进行修改。

 

五、指定MyEclipse编写文件时页面内容数据编码格式(其实就是参数的默认设置),如html,或者jsp网页中提交表单前,用户输入的信息编码格式,配置文件xml中的参数编码格式等。

主要是通知浏览器或服务器,传输数据的编码格式。告诉浏览器用何种编码来解析html或者JSP文件。
window-->Preferences-->MyEclipse-->Files and Editors-->选择子项-->Encoding 
例如:选择UTF-8,
新建jsp文件的时候,contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"就会自动生成,不用每次去手工更改了。
新建html文件的时候,http-equiv="Content-Type" content="text/html; charset=UTF-8"
新建xml文件的时候,

六、eclipse的控制台显示所使用的编码是继承了workspace设置的字符编码格式(也就是上面“二”中设置的编码格式)。

 

问题:

1、如果别人给了给的一个project,编码格式为GBK,我自己使用的编码格式为UTF-8,导入这个project后,显示乱码,需要进行哪些修改?
我想知道“一定必须修改”的地方。如果我上面的几点依次全部更改,导入的用GBK编码的project是可以正常显示的。但是更改以后,查看自己用UTF-8编码的project的代码又会出现中文乱码了。
其实这个问题就是,如何让两个Project使用不同编码(如UTF-8和GBK),而都可以正常查看,不出现乱码。

 

2、打开编写好的java代码,按右键-->General-->Editors-->Test Editors-->Spelling-->Encoding这个到底是干什么用的???

这个和window-->preferences-->general-->General-->Editors-->Test Editors-->Spelling-->Encoding修改效果是一样的,这个是全局修改。
这个设置默认继承全局workspace编码格式,也就是上面“二”中设置的编码格式。

转载于:https://my.oschina.net/u/2351298/blog/783928

你可能感兴趣的文章
K3CLOUD核算单据查询异常语句
查看>>
王甲佳全息营销系列01-期望对试图通过网络实现或者兑现更多价值的人士有帮助...
查看>>
Buffer cache spillover: only buffers
查看>>
解读Oracle Database 12.1新特性Pluggable Databases
查看>>
了解rman catalog的兼容性
查看>>
java循环练习:猜数游戏
查看>>
VMware虚拟化之VSA(vSphere Storage Appliance)群集(二) 故障恢复详测
查看>>
巧破网页禁用鼠标右键
查看>>
2-07 总结:服务器硬件对性能的影响
查看>>
linux tty互看操作
查看>>
jQuery 菜单切换
查看>>
DIV浮动层绝对居中定位用CSS怎么写
查看>>
CC攻击
查看>>
手动安装linux操作系统
查看>>
宋朝五子登科家族金榜进士涂大任后裔在松滋
查看>>
ASP.NET 简单的柱形图实现(附带示例)
查看>>
Hugepages你用了吗?--原理概念篇
查看>>
Mac idea 快捷键
查看>>
Linux服务器部署系列之二—MySQL篇
查看>>
原创企业级控件库之图片浏览控件
查看>>