开发中遇到的编码的坑

选择一个安逸的环境,可以让你少去踩了很多的坑,比如本文所说的问题,编码问题。

编码问题主要存在于三个方面,一.编辑器编码,二.网络接收(接口)编码问题,三.数据库编码问题。这里,一个个问题可能都会让人头痛不已,下面我就来总结一下出现的问题及部分的解决方案。

编辑器问题,你是选择gbk还是选择utf8,这个问题如果放在现在开始的项目,肯定是选择utf8的,因为你不知道,这样会让少走许多编码转换的弯路。举例,php里使用json_encode要求使用utf8格式,jquery传送数据用utf8...   当然了,编辑器编码一般主要是为了配有合数据库编码的,所以,如果数据库有多种编码,那就麻烦咯!特别说明,如果使用json_encode,记得考虑在转换前转码一次,在解码json_decode存数据库时必要的也转一次编码,这样,才不至于要么不能解,要么解出来为空,要么解出来是乱码。

网络接收(接口)编码问题,这个问题就不是我们所能掌控的了,要么大家协商好用什么编码,然后做对应转码即可。但是如果是去抓取别人网页信息而不是商量着来,那,就只有猜测了,猜出是什么编码,然后再做对应转换。示例,php中用mb_check_encoding去检查编码,但是是根据给出的编码进行尝试,自己可以重写一个方法用于检测编码,然后转换。

数据库编码问题,应该如何选择编码呢,还是那句话,没有什么特殊要求,就悬utf8吧,不然,问题可能出在哪里呢?一导数据,你可能从其他数据库导出到新数据库,然后就乱码了,二和编辑器不配合,一遇中文就乱码。

总之,重点在于配合,只是utf8会让你省不少力。如果出现编码问题,就从这些点去发现问题吧!

时间: 2024-10-14 10:21:55

开发中遇到的编码的坑的相关文章

开发中GBK+UTF8编码的处理

以前自己开发项目,前后统一,都是utf8,也没出现过什么问题.可是最近,一个小demo暴露出了问题. html页面是gbk,php代码是utf8,数据库又是gbk,这,,,奶奶的,坑了~ 页面有input 的text类型,和textarea ,都是文本输入和显示的. 涉及函数: js:encodeURIComponent() php:urldecode()  addslashes() htmlspecialchars() 解决思路: 1.页面gbk.utf8无所谓,反正都会自动检测.输入字段提交

开发中遇到的编码问题(转)

1.说到编码,最大的问题就是乱码了,为啥会有乱码呢 ? 因为字符在编码和解码的时候,用的编码字典不一致,从而导致了乱码,常见的编码有ASCII.GBK.GB2312.UTF-8.UTF-16等. 2.为啥需要编码呢? 因为计算机的存储是二进制的,也就是01?010这种形式的,这样一些中文.法文.俄文等,就需要编码解码才可以达到效果. 3.java中数据类型的转换是啥? bit(位).byte(字节).char(字符) 1byte == 8bit      一位二进制称为一个bit,一个byte的

iOS开发中的几个小坑

1.比较NSString时,不要用==,要用isEqualToString:方法 2.不要把动画代码放入viewDidLoad中,而是应该放入viewDidAppear中 3.UIAlertView调用dismissWithClickedbuttonIndex后,alertView:didDismissWithButtonIndex会被代理调用,而alertView:clickedButtonAtIndex不会被调用 4.在switch语句中,若声明了变量,则需要用{}将case语句括起来. 5

我总结的iOS开发中的几个小坑

1.比较NSString时,不要用==,要用isEqualToString:方法 2.不要把动画代码放入viewDidLoad中,而是应该放入viewDidAppear中 3.UIAlertView调用dismissWithClickedbuttonIndex后,alertView:didDismissWithButtonIndex会被代理调用,而alertView:clickedButtonAtIndex不会被调用 4.在switch语句中,若声明了变量,则需要用{}将case语句括起来. 5

WEB开发中的字符集和编码

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption

微信小程序开发中wx.redirectTo与wx.navigateTo跳转页面未果

学习小程序开发中难免遇到一些小坑,作者在进行登录功能时遇到登录成功后,页面不可实现跳转到个人中心(admin/admin). 首先大致介绍一下本文的逻辑:验证用户信息后,需跳转页面到个人中心(tabBar页面),采用wx.redirectTo与wx.navigateTo两种方法均未实现,且不报错. 主要原因: admin/admin属于tabBar页面,采用上述两方法不会有任何效果,需采用wx.switchTab法进行跳转. 跳转完成页面: 页面跳转方法: 1.wx.navigateTo 保留当

二十八、带给我们一种新的编码思路——EFW框架CS系统开发中的MVC模式探讨

回<[开源]EFW框架系列文章索引>        EFW框架源代码下载V1.3:http://pan.baidu.com/s/1c0dADO0 EFW框架实例源代码下载:http://pan.baidu.com/s/1eQCc69G       前言:记得最初写出Winform版MVC的代码是在公司的一个产品中,产品有几个界面功能比较多,一个界面窗体的代码尽然有1万多行代码,让我们在维护这几个界面的时候非常的痛苦,你可能想可以把这个大的界面拆分成几个小的界面在集成在一起不就好了,但实际上这样

iOS开发中遇到过的坑

iOS开发中遇到过的坑 前言 做iOS开发这么长时间以来,遇到过不少难题,也踩过不少坑,本来没想过要写这篇文章,但是鉴于以下三点,笔者决定对遇到过的并且还能回忆起来的问题做个记录. 每次问题解决后,满满的成就感,但是当下一次再遇到时,又是一脸懵逼.这个问题我好像见过,但就是不记得怎么解决,记录下来方便以后查阅. 每次面试的时候,面试官总会问我,你在开发中遇到过哪些问题,怎么解决的?问题嘛,挺多的,但是你要我叙述嘛,我......我......我居然一时想不起来,迷之尴尬????(面试官当时想法:

iOS开发中遇到的坑 韩俊强的博客( 草稿)

从事iOS开发有些年月了,从最开始的磕磕绊绊,不知所措,到现在的遇到困难都能快速做出最佳方案处理,中间经历了不可或缺的痛苦.在项目开发中,本人有用印象笔记记录的习惯,所以很多重复出现的坑,很快迎刃而解,而不在同一个地方摔倒两次.为此,特意总结了一下开发中经常遇到的坑,有些可能和你形成共鸣,有些在你看来或许是小儿科,不喜勿喷. A valid provisioning profile for this executable was not found. 解决问题所在:发布证书无法运行在真机上!!!