在这里采用python语言
编码 : str.decode()
"我".encode()
输出:
文档:
- 函数声明:encode(self, /, encoding='utf-8', errors='strict')
- 函数返回:
字节类型 - 解码错误:用于处理解码错误的错误处理方案。(默认值:strict)
说明:
默认值是'strict',这意味着解码错误会引发UnicodeDecodeError。
其他可能的值是'ignore'和'replace'以及任何其他有编解码器注册的名字。
register_error,可以处理UnicodeDecodeErrors。
解码 : bytes.decode()
b'\xe6\x88\x91'.decode()
输出:
文档:
- 函数声明:decode(self, /, encoding='utf-8', errors='strict')
- 函数返回:
字符串类型 - 解码错误:用于处理解码错误的错误处理方案。(默认值:strict)
说明:
默认值是'strict',这意味着解码错误会引发UnicodeDecodeError。
其他可能的值是'ignore'、'replace'和'xmlcharrefreplace'以及其他有编解码器注册的名字。
register_error,可以处理UnicodeDecodeErrors。
编码与解码:调用的函数与utf-8 一样,只是需要传入参数
编码:
def enUnicode(trans_str): """需要转换成unicode编码的字符串""" trans_str = trans_str.encode("unicode-escape") return_value = str(trans_str) return_value = return_value[2:].replace("\\\\u","%") return_value = return_value[:-1] return return_value调用该函数:
解码:
def deUnicode(trans_str): """将unicode编码的字符串重新转换成原来的字符串""" return_value = trans_str.encode("unicode-escape") return_value = return_value.replace(b'%',b'\\u') return_value = return_value.decode("unicode-escape") return return_value调用该函数:
在网页上我们经常看到 url 地址栏的中文被转换成unicode编码,根据前置知识,我们可以将这些编码转换成中文字符
比如:从百度搜索上的url地址栏获取了一段这样的编码
%5168%90e8%66ff%6362
将其解码(调用函数deUnicode)
注意:
- 在这里统一采用的unicode-16标准
- 如果传入的unicode-8,则会引发异常
(unicode error) 'unicodeescape' codec can't decode bytes in position 0-3: truncated \uXXXX escape 【不支持unicode-8】