加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 获取文件区分大小写的名称,不区分大小写拼写

发布时间:2020-12-15 08:46:32 所属栏目:Java 来源:网络整理
导读:我正在创建一个用户从中选择文件的应用程序: FilePicker.PickFile(文件名) 其中filename是一个字符串. 在该方法中,它将转换为: 文件文件=新文件(文件名); 这并没有错.接下来,我做, if(file.exists()){ System.out.println(file.getName());}else{ System.o
我正在创建一个用户从中选择文件的应用程序:

FilePicker.PickFile(文件名)

其中filename是一个字符串.

在该方法中,它将转换为:

文件文件=新文件(文件名);

这并没有错.接下来,我做,

if(file.exists()){
    System.out.println(file.getName());
}
else{
    System.out.println("Fail.");
}

这就是问题的开始.我想得到文件的名称,比如说“HELLO.txt”,但如果filename是“hello.txt”,它仍会传递file.exists()检查,而file.getName()则返回“hello.txt”,“不是”HELLO.txt“.有没有办法,将file.getName()作为区分大小写的版本返回为“HELLO.txt?”谢谢!

一个例子:

HELLO.txt是真实的文件

FilePicker.PickFile( “hello.txt的”);

OUTPUT:

hello.txt的

解决方法

当您使用Windows(保留大小写(FAT32 / NTFS / ..))时,可以使用 file.getCanonicalFile().getName()来获取所选文件的规范名称.

当您使用Linux或Android并且想要根据不一定匹配大小写的文件名选择文件时,遍历文件目录(file.getParent())中的所有文件,并选择.equalsIgnoreCase文件名.或者见Case-insensitive File.equals on case-sensitive file system

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读