一文总结Java获取文件后缀名的所有方法
    		       		warning:
    		            这篇文章距离上次修改已过429天,其中的内容可能已经有所变动。
    		        
        		                
                在Java中,获取文件后缀名可以通过以下几种方法实现:
- 使用java.io.File类的getName()方法结合lastIndexOf()方法。
- 使用Apache Commons IO库的FilenameUtils类的getExtension(String filename)方法。
- 使用Java 7的java.nio.file.Path和java.nio.file.Files类的getExtension(Path path)方法。
以下是实现这些方法的示例代码:
- 使用java.io.File类:
import java.io.File;
 
public class FileExtension {
    public static void main(String[] args) {
        File file = new File("example.txt");
        String extension = getFileExtensionUsingFile(file);
        System.out.println(extension); // 输出: txt
    }
 
    private static String getFileExtensionUsingFile(File file) {
        if (file != null) {
            String name = file.getName();
            int lastIndex = name.lastIndexOf('.');
            if (lastIndex > 0 && lastIndex < name.length() - 1) {
                return name.substring(lastIndex + 1);
            }
        }
        return null; // 或者返回空字符串""
    }
}- 使用Apache Commons IO库:
import org.apache.commons.io.FilenameUtils;
 
public class FileExtension {
    public static void main(String[] args) {
        String extension = getFileExtensionUsingApacheCommonsIO("example.txt");
        System.out.println(extension); // 输出: txt
    }
 
    private static String getFileExtensionUsingApacheCommonsIO(String filename) {
        return FilenameUtils.getExtension(filename);
    }
}- 使用Java 7的java.nio.file库:
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
 
public class FileExtension {
    public static void main(String[] args) {
        Path path = Paths.get("example.txt");
        String extension = getFileExtensionUsingNIO(path);
        System.out.println(extension); // 输出: txt
    }
 
    private static String getFileExtensionUsingNIO(Path path) {
        return Files.getFileExtension(path);
    }
}注意:在实际使用中,你需要确保相关库(Apache Commons IO或Java NIO库)已经被包含在项目依赖中。
评论已关闭