Java 我想把绳子分开

Java 我想把绳子分开,java,Java,我想拆分以下字符串 “C:\ATS\Script\SampleFiles\xml\books.xml” 仅提取文件名(books.xml) 我尝试使用拆分功能,但无法拆分\ if (file.isDirectory()) { String fol = file.getCanonicalPath() ; String foln = fol.split("C:\\ATS\\Script\\SampleFiles\\xml")[1];

我想拆分以下字符串
“C:\ATS\Script\SampleFiles\xml\books.xml”
仅提取文件名(
books.xml

我尝试使用拆分功能,但无法拆分
\

    if (file.isDirectory()) {
       String fol = file.getCanonicalPath() ;
       String foln = fol.split("C:\\ATS\\Script\\SampleFiles\\xml")[1];         
       System.out.println("directory:" + foln);
    }
我希望输出只提取文件名 i、 是这个吗

String fol = ...
String split[];

split = fol.split("\\");

String foln = split[split.length-1];
是这个吗

String fol = ...
String split[];

split = fol.split("\\");

String foln = split[split.length-1];
在中使用
getFileName()
方法

输出

books.xml
在中使用
getFileName()
方法

输出

books.xml
你可以做得更简单

File dir=新文件(“D:\\foo”);
File File=新文件(“D:\\foo\\test.txt”);
System.out.println(“file.getName()=”+file.getName());//test.txt
System.out.println(“dir.getName()=”+dir.getName());//福
你可以做得更简单些

File dir=新文件(“D:\\foo”);
File File=新文件(“D:\\foo\\test.txt”);
System.out.println(“file.getName()=”+file.getName());//test.txt
System.out.println(“dir.getName()=”+dir.getName());//福

首先,为什么不能拆分?第二:你分裂的论点毫无意义。尝试传递“\\”而不是try String foln=fol.split(“\”[5])的整个stringreplicate;可能是重复的首先,为什么不能拆分?第二:你分裂的论点毫无意义。尝试传递“\\”而不是try String foln=fol.split(“\”[5])的整个stringreplicate;不同操作系统中可能重复的分隔符不是全部都是反斜杠。我认为更好的方法是使用
File.separator
。不同操作系统中的分隔符不是全部都是反斜杠。我认为更好的方法是使用
File.separator