【发布时间】:2012-09-07 09:57:09
【问题描述】:
我有一个 UTF-8 字符,我想将其转换为 16 位的 unicode 编码。怎么做?
可以通过读取写入它的文件并使用 repr() 来获得字符的 Unicode,例如:
import codecs
f = codecs.open("a.txt",mode='rb',encoding='utf-8')
r = f.readlines()
for i in r:
print i,repr(i)
输出:
پٹ u'\ufeff\u067e\u0679'
现在如何获得u'\ufeff\u067e\u0679' 的 16 位 unicode 编码?
【问题讨论】:
-
“Unicode 编码”不是一个正确的术语。您是在谈论 UCS-2、UTF-16 还是 Unicode 代码点?
-
值得注意的是,0xfeff 位在这里只是作为字节顺序标记,它不是文本的一部分。
-
从这里看起来不像 utf-8。
\u通常表示一个 unicode 代码点。从那里您可以以不同的格式对其进行编码,但尚不清楚您要做什么。请尝试更详细地解释您的问题。