wget下载中文文件乱码

用wget下载,如果有非ASCII码,文件名中就会存在乱码。wget将非ASCII的字符当作特殊字符,会进行转换,造成了乱码的现象。

解决:

将url.c中的

 

  
    
1    #define FILE_CHAR_TEST(c, mask) \
2     ((opt.restrict_files_nonascii && ! c_isascii ((unsigned char )(c))) || \
3     (filechr_table[(unsigned char )(c)] & (mask)))

修改为:

 

 

  
    
1    #define FILE_CHAR_TEST(c, mask) \
2     (((opt.restrict_files_nonascii && ! c_isascii ((unsigned char )(c))) || \
3     (filechr_table[(unsigned char )(c)] & (mask))) \
4      && ! ((c | 0x0fffffff ) == 0xffffffff )) /* 排除中文 */

重新编译。

 

参考:

解決wget中文亂碼問題的非完善方案

wget中文乱码

你可能感兴趣的:(wget)