Main Content

native2unicode

将数值字节转换为 Unicode 字符表示形式

语法

unicodestr = native2unicode(bytes)
unicodestr = native2unicode(bytes, encoding)

说明

unicodestr = native2unicode(bytes) 将数值向量 bytes 从用户默认编码方式转换为 Unicode® 字符表示形式。native2unicodebytes 视为 8 位字节的向量,而且每个值必须在范围 [0,255] 内。输出参数 unicodestr 是与 bytes 有着相同的常规数组形状的字符向量。

unicodestr = native2unicode(bytes, encoding) 假定 bytes 符合字符向量 encoding 指定的字符编码方案,并将 bytes 转换成 Unicode 表示形式。输入参数 encoding 不能包含字符 (''),或者它必须是编码方案的名称或别名。下面是一些示例:'UTF-8''latin1''US-ASCII''Shift_JIS'。如果 encoding 未指定或不包含任何字符 (''),则使用默认编码方案。encoding 可以是字符向量或字符串标量。

注意

如果 bytes 是字符向量或字符串标量,它将原样返回。

示例

该例从使用未知字符编码方案的字节向量开始。用户编写了一个函数 detect_encoding,用来检测向量的编码方案。如果成功,则以字符向量的形式返回编码方案的名称或别名。如果不成功,则引发以 MException 对象 ME 表示的错误。该例调用 native2unicode 将 bytes 转换为 Unicode 表示形式:

try
    enc = detect_encoding(bytes);
    str = native2unicode(bytes, enc);
    disp(str);
catch ME
    rethrow(ME);
end

请注意,计算机必须经过正确的配置,可以检测到的编码方案所代表的语言显示文本,才能正确显示 disp(str) 的输出。

扩展功能

版本历史记录

在 R2006a 之前推出

另请参阅