我的 OS X 的默认字符集是“UTF-8”,这与我正在处理的 Java 项目相同。问题是当路径包含中文字符时,File 类及其某些方法无法正常工作。(一般unicode表示一个汉字需要3个字节)
比如我先发起一个String variable = "xxx",其中"xxx"是一个包含汉字的有效路径。之后,我通过 new File(prevStringVar) 创建了一个 File 对象。并且当调用 exists() 方法时,它总是返回 false。
调用 listFiles() 方法时更加连线。
我认为如果可以在实例化 File 对象时指定 Charset,例如构造函数 File(String path, Charset charset),问题就会得到解决。