如何从包含绝对文件路径的字符串中获取文件名?

2022-08-31 05:15:59

String变量包含文件名 。如何仅将文件名作为字符串获取?C:\Hello\AnotherFolder\The File Name.PDFThe File Name.PDF

我计划拆分字符串,但这不是最佳解决方案。


答案 1

只需使用 File.getName()

File f = new File("C:\\Hello\\AnotherFolder\\The File Name.PDF");
System.out.println(f.getName());

使用字符串方法

  File f = new File("C:\\Hello\\AnotherFolder\\The File Name.PDF");  
System.out.println(f.getAbsolutePath().substring(f.getAbsolutePath().lastIndexOf("\\")+1));

答案 2

使用 Path (Java 7+) 的替代方法:

Path p = Paths.get("C:\\Hello\\AnotherFolder\\The File Name.PDF");
String file = p.getFileName().toString();

请注意,拆分字符串取决于平台,因为文件分隔符可能会有所不同。 为您处理该问题。\\Path#getName