提供在不使用文件对象的情况下处理文件名的方法.它以类似的方式在不同的操作系统上运行.这个类解决了从基于Windows的开发机器转移到基于Unix的生产机器时的问题.
类声明
以下是
public class FilenameUtils extends Object
功能
此类定义文件名中的六个组件.将示例位置视为 C:\dev\project \ file.txt .然后组件是 :
前缀 - C:\
相对路径 - 开发\project \
绝对路径 - C:\\\\\\\\\
名称 - file.txt
基本名称 - 文件
扩展名 - txt
要识别目录,请添加分隔符到文件名.
FilenameUtils类的示例
IOTester.java
import java.io.IOException;import org.apache.commons.io.FilenameUtils;public class IOTester { public static void main(String[] args) { try { //Using FilenameUtils usingFilenameUtils(); } catch(IOException e) { System.out.println(e.getMessage()); } } public static void usingFilenameUtils() throws IOException { String path = "C:\\dev\\project\\file.txt"; System.out.println("Full Path: " +FilenameUtils.getFullPath(path)); System.out.println("Relative Path: " +FilenameUtils.getPath(path)); System.out.println("Prefix: " +FilenameUtils.getPrefix(path)); System.out.println("Extension: " + FilenameUtils.getExtension(path)); System.out.println("Base: " + FilenameUtils.getBaseName(path)); System.out.println("Name: " + FilenameUtils.getName(path)); String filename = "C:/commons/io/../lang/project.xml"; System.out.println("Normalized Path: " + FilenameUtils.normalize(filename)); } }
输出
它将打印以下结果.
Full Path: C:\dev\project\Relative Path: dev\project\Prefix: C:\Extension: txtBase: fileName: file.txtNormalized Path: C:\commons\lang\project.xml