免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: realinput
打印 上一主题 下一主题

问个unicode的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2008-01-22 15:18 |只看该作者
没有人知道么/

论坛徽章:
0
12 [报告]
发表于 2008-01-22 18:20 |只看该作者
\xe2\x80\x9c 好像是‘“’,\xe2\x80\x99是“’”

论坛徽章:
0
13 [报告]
发表于 2008-01-22 18:50 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
14 [报告]
发表于 2008-01-22 22:22 |只看该作者

try this

假如你传来的字符串是 str_utf
str_gbk = str_utf.decode('utf-8').encode('gbk')
将str_gbk写入数据库即可
或者 unicode(str_abc,'utf-8').encode('gbk')

[ 本帖最后由 Northland 于 2008-1-22 22:24 编辑 ]

论坛徽章:
0
15 [报告]
发表于 2008-01-23 09:30 |只看该作者
我本地的:
>>> locale.getdefaultlocale()
('zh_CN', 'cp936')
s="\xe2\x80\x9cDon\xe2\x80\x99t Send\xe2\x80\x9d"
所以我用s.decode("utf8"),可以输出为:“Don’t Send”。
多尝试几次不同的decode和encode,保存进数据库的时候也试试用set names 编码;

另外还要注意下文件的编码,gbk或者utf8

[ 本帖最后由 xiaoyu9805119 于 2008-1-23 09:31 编辑 ]

论坛徽章:
0
16 [报告]
发表于 2008-01-23 09:34 |只看该作者

回复 #14 Northland 的帖子

可是我们数据库要求的编码是utf-8

论坛徽章:
0
17 [报告]
发表于 2008-01-23 09:35 |只看该作者

回复 #13 thinkc 的帖子

我试试吧

论坛徽章:
0
18 [报告]
发表于 2008-01-23 09:36 |只看该作者

回复 #17 realinput 的帖子

嗯   在你的机器上显示是正确的么?

论坛徽章:
0
19 [报告]
发表于 2008-01-23 10:32 |只看该作者

回复 #15 xiaoyu9805119 的帖子

那我写 locale.setlocale(locale.LC_ALL, 'zh_CN.GBK') 似乎没生效
getdefaultlocale还是en_US.utf
如何能改成跟你一样的locale

我setlocale(0,''zh_CN.GBK)也没用

[ 本帖最后由 realinput 于 2008-1-23 10:41 编辑 ]

论坛徽章:
0
20 [报告]
发表于 2008-01-23 13:47 |只看该作者
你先把文字能用py输出为正确的utf8格式,即不是乱码。

然后再想保存进数据库。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP