前两天写了一个小程序,涉及到汉字的发送和读取,去matlab官网上找帮助文档,也没有说很清楚,有些博客也讲的比较模糊,最后还是自己摸索了一下,发现其实还挺简单,和大家介绍一下
1. 引入Unicode码
首先说明一下,对于 fwrite() 和 fread() 函数,他们默认的读取和发送字符编码均为 ASCII 码,而 ASCII 表里并不包含汉字编码,所以在发送和接收的时候不能正确解析,最后得到的就是乱码。对于英文之外的文字,我们有一种统一的编码,叫做 Unicode 码,它几乎包含了所有国家的字符,其中就包括了大多数的汉字,这里我们就要利用这种编码来完成汉字的传输。(注意: ASCII 码采用 8位二进制数 表示,Unicode 码采用 16位二进制数 表示,因此 Unicode 码有广泛性,但是占用空间较大)
2. 转换函数介绍
为了完成编码转换,在这里介绍两个函数,一个是 unicode2native() ,很清楚,这个是将Unicode码转换为ASCII码表示的函数,另一个就是 native2unicode() ,这个