这两天看了一下MYSQl升级到4.1以后对编码的支持问题,决定以后开发的东西,都尽量使用utf-8编码,这样能够在将来的数据转换,交互……中省去很多麻烦。DOS时代的编码是GB2312,Win95时代的编码是GBK,网络时代的编码当然就是utf-8了。
一般在我们的应用中产生乱码的地方有很多,在操作系统层,DB层,中间应用层,WEB服务器层,浏览器层,大家都会对输入输出的字节流进行编码。只要有一点不对,都会出现问题。每当出来乱码问题,需要对问题进行隔离,实际情况,实际分析。
在令狐虫的BLOG上([技术]恼人的编码问题),针对碰到的MYSQL乱码的情况,写了一点自己的看法:
1,最好全程用utf8。
2,从数据的最终存储,到你所看到的,因为层次太多了,结果是乱码,但中间过程不一定是乱码。
3,你眼睛所看到的并不一定是真实的,只有字节流才不会欺骗你。
4,实际开发的时候,还要考虑开发语言的编码问题。
现在对utf-8编码不习惯的是,一个英文字符从概念上来说,和一个中文字符是等效的,一定要破除以前根深蒂固的两个英文字符等于一个汉字的想法,尤其在计算字符长度的时候。
下班回家,陪LP看《成长的烦恼》。感觉这真是一部超越国家,超越年代的幽默片。看的两人都不想做饭,于是下来吃大排档。大排档有好几家,找了一家味道闻起来很不错的,结果四张桌子都坐满了人,只有打包带回家。掌勺的是个年轻的小伙子,炒菜的姿势很有节奏,速度也很快,两个炒锅左右开工。一边等,一边和他聊天。“生意很不错啊,怎么不多招几个人?桌子都坐满了,旁边还有很多等的人。”他看了看对面生意比较冷清的一家,笑呵呵地说了一句很有深度的话:生意太好,我全做了,到时大家都做不成了。(这是个不遵守城管,夜出昼伏的排档。)回家的路上,边走边和LP讨论这个掌勺的师傅。
回到家,一边吃炒粉,炒面,一边继续看《成》,不停的夸排档的红烧划水味道真不错。一个愉快的周五晚上就这样度过。
Trackback: http://tb.donews.net/TrackBack.aspx?PostId=390323