FilenameUtils工具类

  1. <dependency>  
  2.       <groupId>commons-io</groupId>  
  3.       <artifactId>commons-io</artifactId>  
  4.       <version>2.4</version>  
  5. </dependency>  
  6.  
  7.  
  8.   
  9. import java.util.ArrayList;  
  10. import java.util.List;  
  11. import org.apache.commons.io.FilenameUtils;  
  12. import org.apache.commons.io.IOCase;  
  13. /** 
  14.  * org.apache.commons.io.FilenameUtils工具类笔记 
  15.  * @author 
  16.  */  
  17. public class FilenameUtilsTest {  
  18.     public static void main(String[] args) throws Exception {  
  19.         String fileDirectory = "/D:/aa/bb/cc";   
  20.         String fileName ="file.txt";  
  21.         String fileFullName = fileDirectory +"/"+ fileName;  
  22.         System.out.println("(1)显示linux路径:"+FilenameUtils.normalizeNoEndSeparator(fileFullName));  
  23.         System.out.println("(2)合并目录和文件名为文件全路径:"+FilenameUtils.concat(fileDirectory, fileName));  
  24.         System.out.println("(3)文件路径去除目录和后缀后的文件名:"+FilenameUtils.getBaseName(fileFullName));  
  25.         System.out.println("(4)获取文件的后缀:"+FilenameUtils.getExtension(fileFullName));  
  26.         System.out.println("(5)获取文件的完整目录:"+FilenameUtils.getFullPath(fileFullName));  
  27.         System.out.println("(6)获取文件的目录不包含结束符:"+FilenameUtils.getFullPathNoEndSeparator(fileFullName));  
  28.         System.out.println("(7)获取文件名称,包含后缀:"+FilenameUtils.getName(fileFullName));  
  29.         System.out.println("(8)去除前缀的路径:"+FilenameUtils.getPath(fileFullName));   
  30.         System.out.println("(9)去除前缀并结尾去除分隔符:"+FilenameUtils.getPathNoEndSeparator(fileFullName));  
  31.         System.out.println("(10)获取前缀:"+FilenameUtils.getPrefix(fileFullName));  
  32.         System.out.println("(11)获取前缀长度:"+FilenameUtils.getPrefixLength(fileFullName));  
  33.         System.out.println("(12)获取最后一个.的位置:"+FilenameUtils.indexOfExtension(fileFullName));  
  34.         System.out.println("(13)获取最后一个/的位置:"+FilenameUtils.indexOfLastSeparator(fileFullName));  
  35.         System.out.println("(14)获取当前系统格式化路径:"+FilenameUtils.normalize(fileFullName));  
  36.         System.out.println("(16)获取当前系统无结尾分隔符的路径:"+FilenameUtils.normalizeNoEndSeparator(fileDirectory));  
  37.         System.out.println("(17)获取linux系统无结尾分隔符的路径:"+FilenameUtils.normalizeNoEndSeparator(fileDirectory));  
  38.         System.out.println("(18)移除文件的扩展名:"+FilenameUtils.removeExtension(fileFullName));  
  39.         System.out.println("(19)转换分隔符为当前系统分隔符:"+FilenameUtils.separatorsToSystem(fileFullName));  
  40.         System.out.println("(20)转换分隔符为linux系统分隔符:"+FilenameUtils.separatorsToUnix(fileFullName));  
  41.         System.out.println("(21)转换分隔符为windows系统分隔符:"+FilenameUtils.separatorsToWindows(fileFullName));  
  42.         System.out.println("(22)判断目录下是否包含指定文件或目录:"+FilenameUtils.directoryContains(fileDirectory, fileName));  
  43.         String linuxFileName = FilenameUtils.normalize(fileFullName);  
  44.         System.out.println("(23)判断文件路径是否相同:"+FilenameUtils.equals(fileFullName, linuxFileName));  
  45.         System.out.println("(24)判断文件路径是否相同,格式化并大小写不敏感:"+FilenameUtils.equals(fileFullName,   
  46.                 FilenameUtils.normalize(fileFullName),true,IOCase.INSENSITIVE));  
  47.         System.out.println("(25)判断文件路径是否相同,格式化并大小写敏感:"   
  48.                 + FilenameUtils.equalsNormalized(fileFullName, linuxFileName));  
  49.         System.out.println("(26)判断文件路径是否相同,不格式化,大小写敏感根据系统规则:windows:敏感;linux:不敏感:"  
  50.                 + FilenameUtils.equalsOnSystem(fileFullName, linuxFileName));   
  51.         List<String> extensions = new ArrayList<>();    
  52.         extensions.add("txt");    
  53.         extensions.add("java");   
  54.         System.out.println("(27)判断文件扩展名是否包含在指定集合中:"  
  55.                 + FilenameUtils.isExtension(fileFullName, extensions));   
  56.         System.out.println("(28)判断文件扩展名是否等于指定扩展名:"   
  57.                 + FilenameUtils.isExtension(fileFullName, "txt"));  
  58.         System.out.println("(29)判断文件扩展名是否包含在指定字符串数组中:"   
  59.                 + FilenameUtils.isExtension(fileFullName, new String[]{"txt","java"}));  
  60.         System.out.println("(30)判断文件扩展名是否和指定规则匹配,大小写敏感:"  
  61.                 + FilenameUtils.wildcardMatch(fileName, "*.???"));   
  62.         System.out.println("(31)判断文件扩展名是否和指定规则匹配,大小写不敏感:"   
  63.                 + FilenameUtils.wildcardMatch(fileName, "*.???",IOCase.INSENSITIVE));  
  64.         System.out.println("(32)判断文件扩展名是否和指定规则匹配,根据系统判断敏感型:windows:不敏感;linux:敏感:"   
  65.                 + FilenameUtils.wildcardMatchOnSystem(fileName, "*.???"));  
  66.           
  67.     }  
  68. }  
  69.  
  70. (1)显示linux路径:\D:\aa\bb\cc\file.txt  
  71. (2)合并目录和文件名为文件全路径:\D:\aa\bb\cc\file.txt  
  72. (3)文件路径去除目录和后缀后的文件名:file  
  73. (4)获取文件的后缀:txt  
  74. (5)获取文件的完整目录:/D:/aa/bb/cc/  
  75. (6)获取文件的目录不包含结束符:/D:/aa/bb/cc  
  76. (7)获取文件名称,包含后缀:file.txt  
  77. (8)去除前缀的路径:D:/aa/bb/cc/  
  78. (9)去除前缀并结尾去除分隔符:D:/aa/bb/cc  
  79. (10)获取前缀:/  
  80. (11)获取前缀长度:1  
  81. (12)获取最后一个.的位置:17  
  82. (13)获取最后一个/的位置:12  
  83. (14)获取当前系统格式化路径:\D:\aa\bb\cc\file.txt  
  84. (16)获取当前系统无结尾分隔符的路径:\D:\aa\bb\cc  
  85. (17)获取linux系统无结尾分隔符的路径:\D:\aa\bb\cc  
  86. (18)移除文件的扩展名:/D:/aa/bb/cc/file  
  87. (19)转换分隔符为当前系统分隔符:\D:\aa\bb\cc\file.txt  
  88. (20)转换分隔符为linux系统分隔符:/D:/aa/bb/cc/file.txt  
  89. (21)转换分隔符为windows系统分隔符:\D:\aa\bb\cc\file.txt  
  90. (22)判断目录下是否包含指定文件或目录:false  
  91. (23)判断文件路径是否相同:false  
  92. (24)判断文件路径是否相同,格式化并大小写不敏感:true  
  93. (25)判断文件路径是否相同,格式化并大小写敏感:true  
  94. (26)判断文件路径是否相同,不格式化,大小写敏感根据系统规则:windows:敏感;linux:不敏感:false  
  95. (27)判断文件扩展名是否包含在指定集合中:true  
  96. (28)判断文件扩展名是否等于指定扩展名:true  
  97. (29)判断文件扩展名是否包含在指定字符串数组中:true  
  98. (30)判断文件扩展名是否和指定规则匹配,大小写敏感:true  
  99. (31)判断文件扩展名是否和指定规则匹配,大小写不敏感:true  
  100. (32)判断文件扩展名是否和指定规则匹配,根据系统判断敏感型:windows:不敏感;linux:敏感:true
发布者:songJian   点击数:3024   发布时间:2017-07-08 01:55:42   更新时间:2018-04-13 00:54:39
正在加载评论...