浏览 3810 次
精华帖 (0) :: 良好帖 (4) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-10
MySQL 数据库方面:</br> 数据库的创建支持UTF8: CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_bin; 很多时候,默认的会选择COLLATE utf8_general_ci,这个对中文支持不好.我就是错在这里了。 Python 编码方面: 1指定文件编码是必须的: #-*-coding:utf-8-*-</br> 2某些环境下可以使用这个:</br> reload(sys);sys.setdefaultencoding('utf-8')</br> 3python的字符串分为"unicode"和"str"</br> -1 str 是指带有编码的字符串 -2 unicode 是指不带有编码的字符串 这两个概念的相互转换是这样进行的: str ------> unicode --------> str decode encode 解码 编码 举个最简单的例子: </br> 根据上面的描述,b应该是不进行编码的a的值(反正a就是b带有gbk编码的值) 于是,我们可以得到 >>> a.decode( 'gbk' ) u'\u4e2d' 同样也可以得到 >>> b.encode( 'gbk' ) '\xd6\xd0' 所以一般的 xxx.decode('gbk').encode('utf-8') 4.MySQLdb操作</br> conn=MySQLdb.connect(host,usr,pwd,db,charset='utf8') </br> PHP读取操作:</br> <?php $conn=mysql_connect($hostname='127.0.0.1',$username='root',$password=''); mysql_select_db('text'); mysql_query("set names 'utf8'"); $sql='select text from text where id = 1'; $result=mysql_query($sql,$conn); while ($row = mysql_fetch_assoc($result)){ print $row['text']; } ?> 更多可以参考: http://www.blogjava.net/vulcan/articles/160978.html http://www.yuanma.org/data/2006/0907/article_1476.htm 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |