iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >java如何遍历某个路径下的所有PDF文件
  • 491
分享到

java如何遍历某个路径下的所有PDF文件

java教程java遍历路径PDF文件 2020-10-19 10:10:25 491人浏览 才女
摘要

目标:找出某路径下的所有pdf文件,当然,也适用于找出所有文件、所有txt文件等等。输入:任意一个路径(可以是文件或文件夹)。输出:该路径下所有PDF文件的路径。思路:根据路径字符串是否以“.pdf”结尾来判断是否是PDF文件。首先判断输入

目标:

找出某路径下的所有pdf文件,当然,也适用于找出所有文件、所有txt文件等等。

输入:

任意一个路径(可以是文件或文件夹)。

输出:

该路径下所有PDF文件的路径。

思路:

根据路径字符串是否以“.pdf”结尾来判断是否是PDF文件。

首先判断输入路径是文件还是文件夹,是文件则直接判断是否是PDF文件,是文件夹,则获取其下所有的文件(夹)对象集合,存到LinkedList对象中,然后遍历LinkedList,每次获取并移除第一个对象进行判断,对象是文件则直接判断是否是PDF文件,对象是文件夹则获取并遍历其下所有文件对象。

相关免费视频教程推荐:java免费视频教程

注意:

是文件则直接判断是否是PDF文件。是文件夹,则将该对象加入到LinkedList中。

代码示例如下:

package load_select;
 
import java.io.File;
import java.util.Arrays;
import java.util.LinkedList;
 
public class FindAllFiles {
 
	public static void folderMethod1(String path) {
		
        File file = new File(path);
        LinkedList list = new LinkedList<>();
        
        //保存所有pdf文件的对象
        LinkedList pdfList = new LinkedList();
 
        //该路径对应的文件或文件夹是否存在
        if (file.exists()) {
        	
        	//如果该路径为---文件或空文件夹
            if (null == file.listFiles()) {
//            	System.out.println(file.getAbsolutePath());
            	if(file.getAbsolutePath().endsWith(".pdf")) 
            		pdfList.add(file);
            }
            
            //如果该路径为非空文件夹
            else {
            	//将该路径下的所有文件(文件或文件夹)对象加入队列
                list.addAll(Arrays.asList(file.listFiles()));
                //遍历该队列     
                while (!list.isEmpty()) {
              	
                	File firstF = list.removeFirst();
                	
                	//这里不论是文件夹还是文件,只需判断是否以“.pdf”结尾
            		if(firstF.getAbsolutePath().endsWith(".pdf")) 
            			pdfList.add(firstF);
                	
                	File[] files = firstF.listFiles();
                  
                	if (null == files) {
                		//System.out.println(firstF.getAbsolutePath());
                		continue;
                	}
                	for (File f : files) {
                		if (f.isDirectory()) {
                			//System.out.println("文件夹:" + f.getAbsolutePath());
                			list.add(f);
                		} else {
                			//System.out.println("文件:" + f.getAbsolutePath());
                			
                			if(f.getAbsolutePath().endsWith(".pdf")) 
                    			pdfList.add(f);
                			
                		}
                	}
              }
            }
 
        } else {
            System.out.println("文件不存在!");
        }
        
        //输出所有pdf文件的路径
        for(File f : pdfList) 
        	System.out.println(f.getAbsolutePath());
        
    }
	
	public static void main(String[] args) {
		String path = "D:Filepdf表格识别";    //改为自己的路径
		folderMethod1(path1);
	}
}

部分结果如图:

650c3da9589e1f77af7be5cb59e5054.png

相关文章教程推荐:java入门

--结束END--

本文标题: java如何遍历某个路径下的所有PDF文件

本文链接: https://www.lsjlt.com/news/4128.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作