FilenameUtils工具类/获取文件名称/后缀等

一:添加依赖

<dependency>  
      <groupId>commons-io</groupId>  
      <artifactId>commons-io</artifactId>  
      <version>2.4</version>  
</dependency> 

二、代码示例

package com.sunny.util;

import org.apache.commons.io.FilenameUtils;
import org.apache.commons.io.IOCase;

import java.io.File;
import java.util.ArrayList;
import java.util.Collection;

/**
 * @PACKAGE_NAME: com.sunny.util
 * @AUTHOR: SunYingTao
 * @DATE: 2022/12/15 10:51
 * @DESCRIPTION:
 */
public class FilenameUtilsDemo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String basePath = "C:/work/info/fileutil";
        String fileName = "1.jpg";
        String fullFileName = basePath+ File.separator +fileName;
        System.out.println("1、显示linux路径:"+ FilenameUtils.normalizeNoEndSeparator(fullFileName));
        System.out.println("2、合并目录和文件名为文件全路径:"+FilenameUtils.concat(basePath, fileName));
        System.out.println("3、文件路径去除目录和后缀后的文件名:"+FilenameUtils.getBaseName(fullFileName));
        System.out.println("4、获取文件的后缀:"+FilenameUtils.getExtension(fullFileName));
        System.out.println("5、获取文件的目录:"+FilenameUtils.getFullPath(fullFileName));
        System.out.println("6、获取文件的目录不包含结束符:"+FilenameUtils.getFullPathNoEndSeparator(fullFileName));
        System.out.println("7、获取文件名称,包含后缀:"+FilenameUtils.getName(fullFileName));
        System.out.println("8、去除前缀的路径:"+FilenameUtils.getPath(fullFileName));
        System.out.println("9、去除前缀并结尾去除分隔符:"+FilenameUtils.getPathNoEndSeparator(fullFileName));
        System.out.println("10、获取前缀:"+FilenameUtils.getPrefix(fullFileName));
        System.out.println("11、获取前缀长度:"+FilenameUtils.getPrefixLength(fullFileName));
        System.out.println("12、获取最后一个.的位置:"+FilenameUtils.indexOfExtension(fullFileName));
        System.out.println("13、获取最后一个/的位置:"+FilenameUtils.indexOfLastSeparator(fullFileName));
        System.out.println("14、获取当前系统格式化路径:"+FilenameUtils.normalize(fullFileName));
        System.out.println("15、获取linux系统格式化路径:"+FilenameUtils.normalize(fullFileName));
        System.out.println("16、获取当前系统无结尾分隔符的路径:"+FilenameUtils.normalizeNoEndSeparator(basePath));
        System.out.println("17、获取linux系统无结尾分隔符的路径:"+FilenameUtils.normalizeNoEndSeparator(basePath));
        System.out.println("18、移除文件的扩展名:"+FilenameUtils.removeExtension(fullFileName));
        System.out.println("19、转换分隔符为当前系统分隔符:"+FilenameUtils.separatorsToSystem(fullFileName));
        System.out.println("20、转换分隔符为linux系统分隔符:"+FilenameUtils.separatorsToUnix(fullFileName));
        System.out.println("20、转换分隔符为linux系统分隔符:"+FilenameUtils.separatorsToUnix(fullFileName));
        System.out.println("21、转换分隔符为windows系统分隔符:"+FilenameUtils.separatorsToWindows(fullFileName));
        //System.out.println("22、判断目录下是否包含指定文件或目录:"+FilenameUtils.directoryContains(basePath, fullFileName));
        String linuxFileName = FilenameUtils.normalize(fullFileName);
        System.out.println("23、判断文件路径是否相同,非格式化:"+FilenameUtils.equals(fullFileName, linuxFileName));
        System.out.println("24、判断文件路径是否相同,格式化并大小写不敏感:"+FilenameUtils.equals(fullFileName, FilenameUtils.normalize(fullFileName),true,IOCase.INSENSITIVE));
        System.out.println("25、判断文件路径是否相同,格式化并大小写敏感:"+FilenameUtils.equalsNormalized(fullFileName, linuxFileName));
        System.out.println("26、判断文件路径是否相同,不格式化,大小写敏感根据系统规则:windows:敏感;linux:不敏感:"+FilenameUtils.equalsOnSystem(fullFileName, linuxFileName));
        Collection extensions = new ArrayList();
        extensions.add("txt");
        extensions.add("java");
        System.out.println("27、判断文件扩展名是否包含在指定集合中:"+FilenameUtils.isExtension(fullFileName, extensions));
        System.out.println("28、判断文件扩展名是否等于指定扩展名:"+FilenameUtils.isExtension(fullFileName, "txt"));
        System.out.println("29、判断文件扩展名是否包含在指定字符串数组中:"+FilenameUtils.isExtension(fullFileName, new String[]{"txt","java"}));
        System.out.println("30、判断文件扩展名是否和指定规则匹配,大小写敏感:"+FilenameUtils.wildcardMatch(fileName, "*.???"));
        System.out.println("31、判断文件扩展名是否和指定规则匹配,大小写不敏感:"+FilenameUtils.wildcardMatch(fileName, "*.???", IOCase.INSENSITIVE));
        System.out.println("32、判断文件扩展名是否和指定规则匹配,根据系统判断敏感型:windows:不敏感;linux:敏感:"+FilenameUtils.wildcardMatchOnSystem(fileName, "*.???"));

    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
获取Word文件中的标题、序号、批注等工具类,可以通过使用Java编程语言中的Apache POI库来实现。 首先,需要导入Apache POI库。在项目中的构建文件(如pom.xml)中添加相关依赖项,然后重新构建项目以生成所需的类和方法。 接下来,可以创建一个工具类,命名为WordParser或类似的名称。该类需要引入Apache POI库中与Word文档处理相关的类。 在这个类中,可以创建一个方法,例如parseWordFile(String filePath),接收包含Word文件路径的参数。在该方法中,打开Word文档并获取文档的内容。 使用Apache POI库,可以通过以下步骤来获取Word文件中的标题、序号、批注等信息: 1. 获取文档的标题:使用Document类的getTitle方法,该方法将返回文档的标题。 2. 获取文档的段落:使用XWPFDocument类的getParagraphs方法,该方法将返回文档中所有段落的列表。 3. 获取段落的编号:在获取段落列表后,可以使用XWPFParagraph类的getNumId方法获取段落的编号。 4. 获取段落的文本内容:可以使用XWPFParagraph类的getText方法来获取段落的文本内容。 5. 获取批注内容:使用XWPFDocument类的getCommentsTable方法获取文档的批注表。然后,可以使用XWPFComments的getComments方法来获取具体批注。 根据项目的具体需求,可以在工具类中定义适当的方法来返回所需的信息,或遍历文档以获取所有标题、序号、批注等信息。 最后,可以使用该工具类来解析Word文件,并获得所需的标题、序号、批注等信息。 需要注意的是,这只是一个基本的框架示例,具体的实现可能因项目需求和Word文件的格式而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿Sunny

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值