在 Java 中,截取文件后缀的方法有多种实现方式。我将为您介绍三种常见的方法,并提供相应的步骤流程和示例代码。以下是这些方法的详细说明:
步骤流程:
lastIndexOf()
方法找到文件名中最后一个点(.)的索引。substring()
方法截取从点索引+1 位置开始到字符串末尾的子字符串,即文件后缀。示例代码:
public class FileExtensionExtractor {
public static String getFileExtension(String fileName) {
int lastIndex = fileName.lastIndexOf(".");
if (lastIndex != -1) {
return fileName.substring(lastIndex + 1);
}
return "";
}
public static void main(String[] args) {
String fileName = "example.txt";
String extension = getFileExtension(fileName);
System.out.println("File extension: " + extension);
}
}
步骤流程:
StringTokenizer
以点(.)作为分隔符将文件名拆分为多个子字符串。示例代码:
import java.util.StringTokenizer;
public class FileExtensionExtractor {
public static String getFileExtension(String fileName) {
StringTokenizer tokenizer = new StringTokenizer(fileName, ".");
String lastToken = "";
while (tokenizer.hasMoreTokens()) {
lastToken = tokenizer.nextToken();
}
return lastToken;
}
public static void main(String[] args) {
String fileName = "example.docx";
String extension = getFileExtension(fileName);
System.out.println("File extension: " + extension);
}
}
步骤流程:
Paths.get()
方法将文件路径字符串转换为 Path
对象。Path
对象的 getFileName()
方法获取文件名。Path
对象的 toString()
方法将文件名转换为字符串,并通过 lastIndexOf()
和 substring()
方法获取文件后缀。示例代码:
import java.nio.file.Path;
import java.nio.file.Paths;
public class FileExtensionExtractor {
public static String getFileExtension(String filePath) {
Path path = Paths.get(filePath);
String fileName = path.getFileName().toString();
int lastIndex = fileName.lastIndexOf(".");
if (lastIndex != -1) {
return fileName.substring(lastIndex + 1);
}
return "";
}
public static void main(String[] args) {
String filePath = "path/to/example.png";
String extension = getFileExtension(filePath);
System.out.println("File extension: " + extension);
}
}
这些方法中的任何一种都可以用于截取文件后缀,具体选择哪种方法取决于您的偏好和代码的上下文。如果需要使用 Java 第三方库,上述方法均不需要依赖额外的库。