Java File 路径和文件名

在Java编程中,我们经常需要处理文件和目录。Java提供了File类来操作文件和目录。File类提供了一系列方法来获取文件的路径和文件名。

文件路径

文件路径是指文件在计算机文件系统中的位置。在Java中,文件路径可以使用字符串来表示。通常有两种类型的文件路径:绝对路径和相对路径。

绝对路径

绝对路径是指文件在文件系统中的完整路径,从根目录开始一直到文件的位置。在不同的操作系统中,绝对路径的表示方式可能有所不同。

在Windows系统中,绝对路径使用反斜杠(\)作为路径分隔符,例如:

String absolutePath = "C:\\Users\\user\\Documents\\example.txt";

在UNIX或Linux系统中,绝对路径使用正斜杠(/)作为路径分隔符,例如:

String absolutePath = "/home/user/Documents/example.txt";

相对路径

相对路径是指文件相对于当前工作目录的路径。当前工作目录是指程序运行时所在的目录。

相对路径可以使用以下表示方法:

  • .:表示当前目录
  • ..:表示上一级目录

例如,假设当前工作目录是/home/user/,文件example.txt位于/home/user/Documents/目录下,可以使用相对路径来表示文件路径:

String relativePath = "./Documents/example.txt";

文件名

文件名是指文件路径中的最后一部分,不包括路径分隔符。可以使用File类的方法来获取文件名。

获取文件名

可以使用File类的getName()方法来获取文件名,例如:

File file = new File("C:\\Users\\user\\Documents\\example.txt");
String fileName = file.getName();
System.out.println(fileName);  // 输出:example.txt

获取文件扩展名

文件扩展名是文件名中最后一个点后面的部分,用于表示文件的类型。可以使用File类的getName()方法获取文件名,然后使用字符串处理方法来获取文件扩展名。

File file = new File("C:\\Users\\user\\Documents\\example.txt");
String fileName = file.getName();
int dotIndex = fileName.lastIndexOf('.');
String fileExtension = fileName.substring(dotIndex + 1);
System.out.println(fileExtension);  // 输出:txt

示例代码

下面是一个完整的示例代码,演示了如何获取文件路径和文件名:

import java.io.File;

public class FilePathAndFileNameExample {
    public static void main(String[] args) {
        // 绝对路径示例
        String absolutePath = "C:\\Users\\user\\Documents\\example.txt";
        File absoluteFile = new File(absolutePath);
        System.out.println("Absolute Path: " + absolutePath);
        System.out.println("File Name: " + absoluteFile.getName());

        // 相对路径示例
        String currentDirectory = System.getProperty("user.dir");
        String relativePath = currentDirectory + "\\Documents\\example.txt";
        File relativeFile = new File(relativePath);
        System.out.println("Relative Path: " + relativePath);
        System.out.println("File Name: " + relativeFile.getName());
    }
}

运行上述代码,将会输出以下结果:

Absolute Path: C:\Users\user\Documents\example.txt
File Name: example.txt
Relative Path: C:\path\to\current\directory\Documents\example.txt
File Name: example.txt

通过上述示例,我们可以看到如何使用Java获取文件路径和文件名。了解文件路径和文件名对于文件操作非常重要,可以帮助我们更好地处理文件和目录。