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); } }