开发常见中的编码问题总结

开发常见中的编码问题总结


开发中遇到编码问题可以说很常见,总结一下很有必要

1、编码问题可能会出现在哪些环节,那些地方?

可以大致划分到两种场景:网络传输,IO操作

网络传输:

  1. http传输过程中,的request,response乱码,一般是web浏览器、web容器,应用程序的编码不一致导致。
  2. 数据库连接时的编码设置与应用程序不一致,也可能导致乱码,如Mysql的clinet和server端编码未设置utf8,有可能导致乱码。
  3. 应用程序间的服务调用,两端的编码不一致导致的乱码。

IO操作:

  1. 应用程序读写文件时乱码,这里涉及到服务部署的机器的系统编码,文件编码,不匹配也很容易出现乱码。如读写excell,文本文件,配置文件。
  2. 输出文件到浏览器时乱码。

2、编码问题如何解决?

保持各种中间件,web容器,数据库的编码配置方式一致,以及操作系统编码一致。
常见的配置:
1、tomcat 的 urlenconding =utf-8
2、mysqld的默认编码设置:(最新的mysql据说已经默认utf8了,解决了不少麻烦)
在mysql的ini配置文件中,添加或修改client 和mysqld的字符编码为utf8
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值