https://blog.csdn.net/qq_39629277/article/details/82854095
这篇文章采用了String类的split()、substring()函数来获取文件名、文件类型
改进:用File类获取文件名以及文件路径:
File file=new File("D:\\t.txt");
System.out.println("File Name= "+file.getName());
System.out.println("Abstract Path= "+file.getPath());
//输出结果
File Name= t.txt
Abstract Path= D:\t.txt
原文:
1.获取文件名:
方法一:split分割
String fileName="E:\\file.docx";
String temp[]=fileName.split("\\\\");
String fileNameNow=temp[temp.length-1];
System.out.println(fileNameNow);
控制台输出结果:
方法二:substring截取
String fileName="E:\\file.pdf";
String fileNameNow = fileName.substring(fileName.lastIndexOf("\\")+1);
System.out.println(fileNameNow);
控制台输出结果:
2.获取文件前缀名:
//获取文件名
String filename = "file.docx";
String caselsh = filename.substring(0,filename.lastIndexOf("."));
System.out.println(caselsh);
控制台输出结果:
3.获取文件类型(后缀名):
方法一:
split分割:如果用“.”作为分隔的话,必须是如下写法,String.split("."),这样才能正确的分隔开,不能用String.split(".")
String filename = "file.txt"; // 文件名
String[] strArray = filename.split("\\.");
int suffixIndex = strArray.length -1;
System.out.println(strArray[suffixIndex]);
控制台输出结果:
方法二:
substring截取:substring(int beginIndex, int endIndex)
返回从开始位置(beginIndex)到目标位置(endIndex)之间的字符串,但不包含目标位置(endIndex)的字符。
File file=new File("E:\\file.doc");
String fileName=file.getName();
String fileTyle=fileName.substring(fileName.lastIndexOf("."),fileName.length());
System.out.println(fileTyle);
控制台输出结果: