» 您尚未 登录   注册 | 银行 | 首页调用管理 | 博客 | 帮助 | 社区 | 无图版
华镭社区论坛 -> 应用程序 -> 修改unzip,以支持包里的中文文件名
 XML   RSS 2.0   WAP 

--> 本页主题: 修改unzip,以支持包里的中文文件名 加入收藏 | 收藏主题 | 上一主题 | 下一主题
hppyhjh




该用户目前不在线
级别: 普通会员
精华: 0
发帖: 76
威望: 79 点
镭: 88 L
贡献值: 0 点
在线时间:36(小时)
注册时间:2007-02-07
最后登录:2008-05-13
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子

修改unzip,以支持包里的中文文件名

华镭把这个工作做了吧,不然对不起使用中文的用户啊。

源由:
在winxp下打了个zip包,在rays2.0下解压,其中中文文件名显示为乱码。

解决办法:
http://rays.openrays.org/RAYSLX/pool/main/u/unzip/ 下载源码,并打上patch
参照 http://bbs.chinaunix.net/thread-1002730-2-1.html ,具体操作如下
打开 unzpriv.h,修改为:

2560 #ifndef Ext_ASCII_TO_Native
2561 # define Ext_ASCII_TO_Native(string, hostnum, hostver, isuxatt, islochdr) \
2562   if (((hostnum) == FS_FAT_ && \
2563       !(((islochdr) || (isuxatt)) && \
2564         ((hostver) == 25 || (hostver) == 26 || (hostver) == 40))) || \
2565       (hostnum) == FS_HPFS_ || \
2566       ((hostnum) == FS_NTFS_ && (hostver) == 50)) { \
2567       _ISO_INTERN((string)); \
2568   } else { \
2569       _ISO_INTERN((string)); \
2570   }
2571 #endif

编译即可。工作量很小,华镭搞搞吧,方便用户。


作一天人,尽一天人事,行吗

[楼 主] | Posted: 2008-03-01 23:38
顶端
rokee


头衔:王牌少校王牌少校
该用户目前不在线
级别: 论坛版主
精华: 1
发帖: 1180
威望: 237 点
镭: 239 L
贡献值: 0 点
在线时间:514(小时)
注册时间:2005-05-19
最后登录:2009-11-01
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子



这是个问题,谢谢
[1 楼] | Posted: 2008-03-03 09:42 顶端

华镭社区论坛 -> 应用程序