[mw_shl_code=c,true]#define _CODE_PAGE 936[/mw_shl_code]
[mw_shl_code=c,true]#define _USE_LFN 1 /* 0, 1 or 2 */[/mw_shl_code]
[mw_shl_code=c,true]#define _LFN_UNICODE 0 /* 0 or 1 */[/mw_shl_code]
在 ffconf.h 文件中设置 这几个值可以 向U盘内读写 中文文件名的文件
现在的问题 是 我要向U盘内 读写 韩文文件名的文件
应该把#define _CODE_PAGE 936 改为#define _CODE_PAGE 949
949 - Korean (DBCS, OEM, Windows) 949是韩国 文字的内码 类似于 我们 的GBK
但是改了之后 向U盘里 写韩文文件名的文件 然后 把U盘插到电脑上查看 他的文件名是乱码的中文
例如 ?----0xb0a1---啊 我写的文件名是 韩文 ? 最后在 电脑上 看到的是 啊 他们的国内码都是 0xb0a1 ,为什么会出现这中现象?
我看了下网上文件系统的例程 都是往 SD卡 读写文件,如果要显示中文文件名 还要在SD卡内 加入 转码表 将 GB2312转成UNICODE
那 我向U盘写文件,并在电脑上显示文件名 这个过程中是没有转码这一步的 但为什么还是可以显示中文,那转码这一步是 编译器完成,
还是 U盘内部有转码程序完成 还是在电脑上显示的时候,windows 已经对其进行转码?
|