【发布时间】:2010-11-20 06:15:28
【问题描述】:
我有一个文件夹中的文件名List<String> 和某个文件名String。我想检测文件名是否在列表中,但需要尊重底层文件系统是否区分大小写的属性。
有什么简单的方法可以做到这一点(除了检查System.getProperty("os.name", "").toLowerCase().indexOf("windows")!=-1 的“hack”)? ;-)
【问题讨论】:
-
请注意,无论如何,“不区分大小写的文件系统”并不等同于“OS 是 Windows”。所有 Windows、Linux 和 Mac OS 都可以使用区分大小写或不区分大小写的文件系统;不要混淆概念。 “hack”是断言小写文件名不存在;用大写的名字创建一个(临时)文件,然后检查是否存在以小写命名的文件。
标签: java filesystems case-sensitive system-properties