【发布时间】:2012-10-11 15:24:01
【问题描述】:
我有一个 java 应用程序作为 jar,它加密了一些文件,我使用 JFileChooser 获取根路径,它工作正常,根路径内的 2 个目录包含目录,这些目录内有一个要加密的文件,其中一个或多个目录是月份(例如 path/january 或 path/May)。 JFileChooser 只探索 rooh 路径目录,月份目录的名称在应用程序的代码中,我有 12 个月份,月份的第一个单词以大写开头,但是如果我的目录名称是小写的,则应用程序没有识别路径,它适用于 linux OS,在 Windows 中完美运行。有什么建议吗?
【问题讨论】:
-
"有什么建议吗?" 确保程序不必处理与实际文件名相同但大小写不同的文件名。不过,我不太明白您从哪里得到这些问题(不正确的大小写文件名)。
-
我在 linux 中使用正确的正确路径进行了测试,并且运行良好。 Windows中的目录名称不取决于是小写还是大写,它可以正常工作,在Linux中必须是完全相同的字母。
-
是的,大多数文件系统都区分大小写。 Windows 不是。
-
@JavaDeveloper 然后处理这两种情况。检查“小写”文件是否存在,如果不存在,则检查“大写”文件。我看不出问题出在哪里?
-
1) 当你开始将字母 'i' 扔进 'December' 时,这与大小写无关(注意 3 e's,no i)。 2) 究竟是什么在制作这些目录?您不能指望对所有 12 个月中每一个拼写错误的情况都进行解释。 3)您可以通过描述导致这种情况的情况,工作流程来帮助我们帮助您。思考你的应用是没有意义的。可以猜出可能存在哪些类似于月份名称的目录名称。 4) 看
File.listFiles()。
标签: java windows linux filesystems case-sensitive