Java获取文件扩展名
时间:2020-02-23 14:34:19 来源:igfitidea点击:
在本教程中,我们将看到如何在Java中获取文件的扩展。
作为 java.io.File不提供任何直接方法 extension文件。
当我们想要在其扩展的基础上以不同的方式处理文件时使用这一点。
我在一个项目上工作,我需要这个实用程序方法。
有两种简单的方法可以得到它。
使用简单的字符串处理程序
创建一个名为的简单java类 GetExtensionOfFileMain.java
package org.igi.theitroad;
import java.io.File;
public class GetExtensionOfFileMain {
public static void main(String[] args)
{
ClassLoader classLoader = GetExtensionOfFileMain.class.getClassLoader();
File xlsxFile=new File(classLoader.getResource("Countries.xlsx").getFile());
String fileExtension=getExtensionOfFile(xlsxFile);
System.out.println("File extension for Countries.xlsx is "+ fileExtension);
File csvFile=new File(classLoader.getResource("Capital.csv").getFile());;
String fileExtensionCSV=getExtensionOfFile(csvFile);
System.out.println("File extension for Captial.csv is "+fileExtensionCSV);
File folder=new File("src/main/resources");
String fileExtensionFolder=getExtensionOfFile(folder);
System.out.println("File extension for src/main/resources is "+fileExtensionFolder);
}
public static String getExtensionOfFile(File file)
{
String fileExtension="";
//Get file Name first
String fileName=file.getName();
//If fileName do not contain "." or starts with "." then it is not a valid file
if(fileName.contains(".") && fileName.lastIndexOf(".")!= 0)
{
fileExtension=fileName.substring(fileName.lastIndexOf(".")+1);
}
return fileExtension;
}
}
运行上面的程序时,我们将获取以下输出:
countress的文件扩展名.xlsx是Captial.csv的XLSX文件扩展名为SRC/Main/Resources的CSV文件扩展名为
正如我们可以看到的,使用字符串 contains()和 lastIndexOf(),我们能够在Java中获取文件的扩展。
使用apache io.
我们需要下载APCAHE IO JAR并将其放入CLASSPATH。
在进行上述步骤之后,我们只需调用 FilenameUtils.getExtension()在Java中检索文件的扩展名。
package org.igi.theitroad;
import java.io.File;
import org.apache.commons.io.FilenameUtils;
public class GetFileExtensionApache {
public static void main(String[] args)
{
ClassLoader classLoader = GetFileExtensionApache.class.getClassLoader();
File xlsxFile=new File(classLoader.getResource("Countries.xlsx").getFile());
String fileExtension=FilenameUtils.getExtension(xlsxFile.getName());
System.out.println("File extension for Countries.xlsx is "+ fileExtension);
File csvFile=new File(classLoader.getResource("Capital.csv").getFile());;
String fileExtensionCSV=FilenameUtils.getExtension(csvFile.getName());
System.out.println("File extension for Captial.csv is "+fileExtensionCSV);
File folder=new File("src/main/resources");
String fileExtensionFolder=FilenameUtils.getExtension(folder.getName());
System.out.println("File extension for src/main/resources is "+fileExtensionFolder);
}
}

