walnutcy

uC/FS 中加入unicode支持 (原创)

0
阅读(11573)

昨天写得时候提到了,我的文件系统尚有两个功能没有实现,

1) 长目录名,长文件名支持;
2) 中文支持;
现在已全部实现了,下面讲讲如何实现,
1--> 今天去仔细看了一下uc/fs的手册及配置设置,发现有一个宏是控制长目录名支持的,打开即可,这里就不提了.
2--> 中文支持,大致看了一下FAT32的文件系统spec, 知道了中间实现用得是unicode码, 并实现读取了两个文件名试了下, 实际测试结果如下: 0x4e2d为"中"的unicode码, 读出来的顺序为2d 4e, 这里我要做的就是把这个unicode码转换为GB2312码就OK了,因为我的系统是支持GB2312的,具体实现方法如下,这里给出的是从unicode到GB2312的转换方法:
代码中用到的两个表在网上搜下就可以找到了,要是哪位朋友想要,却找不到,给我邮件.
Baidu
map