1. 程式人生 > >Java實現檔案目錄的遍歷

Java實現檔案目錄的遍歷

import java.io.File;
import java.io.IOException;

public class FileUtil {

	//遍歷某目錄下的所有目錄
	public static void listDirectoryFile(File dir) throws IOException{
		
		if(!dir.exists()){//dir不存在,丟擲異常
			throw new IllegalArgumentException("目錄"+dir+"不存在");
		}
		if(!dir.isDirectory()){//dir不是目錄丟擲異常
			throw new IllegalArgumentException(dir+"不是目錄");
		}
		//該目錄下所有子目錄及子檔案,返回String陣列
		/*String[] fileNames = dir.list();
		for(String fileName :fileNames){
			System.out.println(dir+"\\"+fileName);
		}*/
		
		//該目錄下所有目錄及檔案,返回file陣列
		File[] files = dir.listFiles();
		if(files!=null&&files.length>0){//如果有下級目錄
		for(File file : files){
			if(!file.isDirectory()){//如果不是目錄則直接打印出來
				System.out.println(file.getAbsolutePath());
			}else{//如果是目錄,遞迴呼叫本方法
				System.out.println(file.getAbsolutePath());
				listDirectoryFile(file);
			}
		}
	}}
	
	public static void main(String[] args) throws IOException {
		listDirectoryFile(new File("C:\\WINDOWS"));
		
	}
}

相關推薦

Java實現檔案目錄

import java.io.File; import java.io.IOException; public class FileUtil { //遍歷某目錄下的所有目錄 public st

檔案目錄,資料夾檔案及屬性

目錄檔案:     1、建立目錄:         注:目錄需要執行的許可權,建立資料夾mode& ~umask         &nbs

Android靜態安全檢測 -> Zip檔案目錄漏洞

Zip檔案目錄遍歷漏洞 - ZipEntry.getName方法 一、API 1. 繼承關係 【1】java.lang.Object 【2】java.util.zip.ZipEntry 2.

java實現檔案目錄壓縮

import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.zip.ZipEntry; import java.util.zip

Linux目錄實現 -- 列出當前目錄下所有檔案

遞迴遍歷目錄,列出目錄中的檔案,程式碼: #include <stdio.h> #include <stdlib.h> #include <string.h>

Java 之遞歸目錄

public ive exists director pos string absolut info desc Java 之遞歸遍歷目錄 一、內容   輸出指定目錄(文件夾)下的所有文件(包括目錄)的絕對路徑 二、源代碼:RecursiveListDirectory.jav

Kali學習筆記31:目錄漏洞、檔案包含漏洞

文章的格式也許不是很好看,也沒有什麼合理的順序 完全是想到什麼寫一些什麼,但各個方面都涵蓋到了 能耐下心看的朋友歡迎一起學習,大牛和槓精們請繞道   目錄遍歷漏洞: 應用程式如果有操作檔案的功能,限制不嚴格會導致可以訪問到WEB目錄意外的檔案 目錄遍歷漏洞和檔案包含漏洞本質以及利用方法一

多執行緒學習-day-06ForkJoin實現非同步方式指定資料夾檔案

執行緒基礎、執行緒之間的共享和協作 (目前會將一些概念簡單描述,一些重點的點會詳細描述) 學習目標:多執行緒的併發工具類(2) 利用ForkJoin來寫一個非同步方式遍歷指定資料夾下所有檔案(或指定檔案)程式 直接看程式碼吧,註釋也比較詳細了: /** * 非同步遍歷指定盤

檔案包含與目錄

directory traversal(目錄遍歷): 使用者通過這個漏洞,修改url、引數變數,從而讀取web根目錄以外的檔案內容; file include: 開發員的include函式對輸入變數過濾不夠嚴格,導致系統檔案,錯誤包含 一、遠端檔案包含 遠端檔案

JAVA通過遞迴FTP中的檔案以樹形結構顯示(JTree)

1、下載相應的jar包      commons-net-3.6.jar 2、具體程式碼如下 package org.ftp.conntion; import java.io.File; import javax.swing.JFrame; import javax

HttpClient使用之下載遠端伺服器中的檔案(注意目錄漏洞)

參考文獻: 1.下載地址 Apache-》Projects-》HttpComponents 2.DownloadServlet 1 package com.servlet; 2 3 import java.io.BufferedInputStream; 4

檔案上傳下載中的安全問題(上傳漏洞與目錄攻擊)

檔案上傳與下載是專案中經常需要提供的功能,不管是哪個web應用幾乎都可以找到.那本屌今天就來說一說我們在開發中的疏忽可能導致的問題. 先建立一個web工程,目錄結構如下  檔案上傳漏洞 我們來看看下面這段檔案上傳程式碼,使用的是common-fileupload.ja

最新Zip壓縮檔案漏洞,黑客可以觸發目錄攻擊

  近日,國內某安全公司研究人員透露了一個關鍵漏洞的詳細資訊,該漏洞影響了許多生態系統中的數千個專案,黑客可以利用這些漏洞在目標系統上實現程式碼執行。  黑客是如何通過Zip壓縮檔案入侵攻擊?被稱為“ZipSlip”的問題是一個任意的檔案覆蓋漏洞,在從檔案檔案中提取檔案時觸發

QT(1)Java型別迭代器實現QList只讀

java風格迭代器: 例如: QList<T>容器: 只讀迭代器類:QListIterator<T> 讀寫迭代器:QMutableListIterator<T> QLinkedList<T>容器: 只讀迭代器:QLinkedList&

容易理解的python用列表(棧)實現深度優先檔案

上片文章介紹了廣度優先,下面介紹一下深度優先。 深度的應用方向和上片文章廣度差不多,大家可以看看。 深度很明顯,只追求其深度,不考慮廣度。 下面還是畫張圖形容一下: 看圖分析: 對(深度遍

c++ 實現跨平臺的目錄

#ifdef _WIN32 #include <io.h> #else #include <unistd.h> #include <stdio.h> #include <dirent.h> #include <sys/s

容易理解的python用佇列實現廣度優先檔案

需求簡單介紹: 硬碟中查詢檔案,不同目錄中檔案的整合,專案開發中多檔案聯合查詢,等都要用到檔案遍歷。 首先簡單闡述一下廣度遍歷實現方式: 廣度遍歷檔案很明顯,每一次遍歷不追求遍歷目錄的深度,只追求

Node.js本地檔案操作之檔案拷貝與目錄的方法

檔案拷貝NodeJS 提供了基本的檔案操作 API,但是像檔案拷貝這種高階功能就沒有提供,因此我們先拿檔案拷貝程式練手。與 copy 命令類似,我們的程式需要能接受原始檔路徑與目標檔案路徑兩個引數。 小檔案拷貝我們使用 NodeJS 內建的 fs 模組簡單實現這個程式如下。

配置檔案以及目錄

#/usr/bin/python #-*- coding:utf8 -*- import difflib import os f1 = open("test1.txt", "r") f2 = open("test2.txt", "r") src = f1.read() ds

文件目錄

pytho byte 返回 walk 遍歷文件 string Coding true 如果 os.walk() os.walk(top,topdown=True,onerror=None) top:需要遍歷的頂級目錄路徑 topdown:默認值“True”,首先返回