1、将字符串'024f'转化为unicode字符,先将字符转化为16进制整数
代码语言:javascript复制code = int('024f',base=16)
print '%x'%code,'x'%code
输出结果:24f 024f,一般选择后者处理凑足偶数字节 转化unicode编码
代码语言:javascript复制unichr(code)
运行得到unicode编码
代码语言:javascript复制u'u024f'
代码语言:javascript复制uc = unichr(code)
print uc, type(uc)
输出字符,类型,特别注意unicode类型,处理起来有点不同,两个字节算一个字符
代码语言:javascript复制ɏ,unicode
转gb18030编码
代码语言:javascript复制uc.encode('gb18030')
代码语言:javascript复制'x810xab6'
代码语言:javascript复制gbk = uc.encode('gb18030')
print type(gbk)
类型是str
代码语言:javascript复制<type 'str'>
代码语言:javascript复制gbk = uc.encode('gb18030')
gbkcode = str()
for el in gbk:
gbkcode = 'x'%ord(el)
print gbkcode
代码语言:javascript复制 8130ab36
代码语言:javascript复制 uc.encode('utf-8')
输出
代码语言:javascript复制 'xc9x8f'
解码
代码语言:javascript复制utf8 = uc.encode('utf-8')
utf8.decode('utf-8')
输出
代码语言:javascript复制u'u024f'
代码语言:javascript复制gbk.decode('gb18030')
输出
代码语言:javascript复制u'u024f'
代码语言:javascript复制
代码语言:javascript复制def writeTxt(fdir, info):
print '%s\f0.txt'�ir
f=open('%s\f0.txt'�ir,'a')
f.write(info)
f.write('n')
f.close()
def getcosins(wordcode, gbkflag=0):
if gbkflag == 2:
wordcodelen = 2
else:
wordcodelen = len(wordcode)
cosins = '20ffx00x'%(gbkflag, wordcodelen)
if gbkflag == 2:
cosins = 'x'%ord(wordcode)
else:
for i in range(len(wordcode)):
cosins = 'x'%ord(wordcode[i])
writeTxt('F:zpcs', cosins)
return cosins
def writegbkucode(uccode):
code = int(uccode,base=16)
print code
uc = unichr(code)
print uc
getcosins(uc, 2)
ucgbk = uc.encode('gb18030')
getcosins(ucgbk)
writegbkucode('024f')