我发现了一个错误:
'ascii' codec can't decode byte 0x8b in position 14: ordinal not in range(128)
当尝试做os.walk时。发生此错误是因为目录中的某些文件中有0x8b (非utf8 8)字符。这些文件来自Windows系统(因此是utf-16文件名),但我已经将文件复制到Linux系统中,并使用python2.7(在Linux中运行)遍历目录。
我尝试将unicode开始路径传递给os.walk,它生成的所有文件和目录都是unicode名称,直到出现非utf 8名称为止,然后由于某种原因,
使用Java将非ASCII文件名添加到zip文件的最佳方式是什么,以便在Windows和Linux中正确读取这些文件?
这里有一个尝试,改编自,它在Windows中工作,但在Ubuntu中失败。在Hardy中,文件名在文件辊中显示为abc-ЖДФ..txt。
import java.io.IOException;
import java.io.PrintStream;
import de.schlichtherle.io.File;
import de.schlichtherle.io.FileOutputStream;
public class Main {
public st