从Linux for Java Application获取正确的路径文件

时间:2012-10-11 15:24:02

标签: java windows linux filesystems case-sensitive

我有一个java应用程序作为jar,它加密一些文件,我使用JFileChooser获取根路径,它工作正常,根目录路径中的2个目录包含目录和这些目录内部要加密的文件,这些目录中的一个或多个是月份(示例路径/一月或路径/五月)。 JFileChooser只浏览rooh路径目录,月份目录的名称在应用程序代码中,我有12个monhts,第一个月的单词以大写开头,但如果我的目录名称是小写的,则appplication不会认识路径,它适用于Linux操作系统,在Windows中工作完美。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我最好能算出来,你想要的是equalsIgnoreCase。这是基于您的代码段的粗伪代码。

// ...
final String FEBRERO ="Febrero";
// ...

if(actualDirectorio.isDirectory()){ 
    ficheros = actualDirectorio.listFiles(); 
    for (File file : ficheros) {
        if (file.isDirectory()) {
            // proceed to check if it is one of the month names
            // ..
            if (file.getName().equalsIgnoreCase(FEBRERO)) {
                // process Files in Febrero OR FEBRERO or febrero OR FeBrErO ..
            } else if ..
        }
    }
}

最好将接受目录的条件封装为表示FileFilter中可以与listFiles()的重载变体一起使用的月份。电池不包括在内。