由于大小写敏感,如何在Linux上运行Java时避免FileNotFound异常?

Sen*_*mar 5 java linux filenotfoundexception case-sensitive

我的Web应用程序在Windows上运行。我也想在Linux上运行我的应用程序。我似乎已经克服了大多数问题,例如路径分隔符等。

现在真正的问题是,FileNotFoundException当Java代码尝试打开文件(例如Abc.txtabc.txt存在)时,我得到了提示。:(

我无法将所有文件名都更改为小写或大写,因为我有很多文件。在不更改代码的情况下,有什么可能的方法来避免这种情况?

Pas*_*ent 3

java.io.File由于API 依赖于系统,因此无法避免这种情况。在 Linux/Unix 上操作文件时必须使用正确的大小写。实际上,我的建议/解决方案是在 Windows 上进行开发期间遵循严格且可移植的约定(例如,仅使用小写文件名,或者更好的是,在以编程方式访问它时使用确切的文件名)。老实说,我不明白为什么你Abc.txt在文件名是abc.txt. 这是一个坏习惯(由于在 Windows 上花费太多时间而养成的),而不是 Linux/Unix 的问题。