iambus / xunlei-lixian

迅雷离线下载脚本
Other
1.97k stars 378 forks source link

linux的ext系列的文件系统不支持超过255字节的文件名,总是导致下载失败。 #338

Open aka863 opened 11 years ago

aka863 commented 11 years ago

linux的ext系列的文件系统不支持超过255字节的文件名。 windows系统的fat16、fat32、ntfs却支持不超过255 UTF-16的文件名,及支持不超过255*2字节的文件名。 最近在linux里下载迅雷离线上的bt任务,里面有些文件名超过了255个字节,结果总是下载失败。 希望iambus能在程序里考虑一下,如果程序是在linux里执行,能把文件名自动截短,使文件名不超过255个字节。

aka863 commented 11 years ago

下面是对各种文件系统的比较,其中有对文件名长度的描述。 http://en.wikipedia.org/wiki/Comparison_of_file_systems

iambus commented 11 years ago

截断比较麻烦。你有种子吗?

aka863 commented 11 years ago

我在windows里用utorrent做了一个种子 http://pan.baidu.com/s/1cgtCi

iambus commented 11 years ago

把你实际使用中遇到的种子发给我最好。伪造的种子没有参考的意义。

aka863 commented 11 years ago

对于这种有上千个文件的bt种子, 用脚本下载的时候, 其中一个文件下载出现错误, 会导致剩余的文件无法下载。 我觉得你的python脚本程序,对这种情况应该处理一下, 不能因为一个文件的下载错误,导致其它文件无法下载。

iambus commented 11 years ago

我需要综合考虑具体情况,包括文件名过长的错误究竟是因为多字节字符还是目录过深还是单个文件名过长。 一般来讲我只会试着考虑下具体发生的情况,而不会花时间解决所有可能情况。