爲什麼有這種差異?爲什麼'Files.exists'返回true,但'File.exists'返回false?它只發生在多字節字符的文件名中
Path docDir
Paths.exists(docDir):true
docDir.toPath().exists():false
其他屬性:
Files.isDirectory(docDir)=true
Files.isExecutable(docDir)=true
Files.isHidden(docDir)=false
Files.isReadable(docDir)=true
Files.isRegularFile(docDir)=false
Files.isSymbolicLink(docDir)=false
Files.isWritable(docDir)=true
Files.notExists(docDir)=false
不會出現在單字節字符串此問題。
的Linux版本
Linux version 2.6.32-431.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC))
這個應用程序服務,並使用我的springBoot庫。
使用'nio'進行讀取/寫入沒有問題,但使用'io.File'會導致'FileNotFoundException'。
有什麼我做錯了嗎?
它是一個符號鏈接?你使用的是什麼版本的Java?我似乎無法在'Paths'或'Path'(to'toPath')找到'exist'這個事情 – MadProgrammer
FYI:'java.io'不處理符號鏈接,其中'java.nio'的確如此一個更好的工作) – MadProgrammer
那麼最新的問題是什麼?也因爲你使用的是非常老的linux,並且你的名字看起來像日語,你使用的是「euc-jp」還是「shift-jis」字符代碼?你使用的是什麼文件系統? – ymonad