欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實(shí)現(xiàn)指定目錄下的文件查找詳解

 更新時間:2022年03月16日 10:34:38   作者:失散多年的哥哥  
這篇文章主要介紹了利用Java實(shí)現(xiàn)指定目錄下的文件查找的方法,能做到給出文件名,查找目錄及其子目錄中是否存在或者給出后綴名,查找目錄及其子目錄中相關(guān)的文件,感興趣的可以學(xué)習(xí)一下

Java實(shí)現(xiàn)指定目錄下的文件查找

入門Java實(shí)現(xiàn)文件的查找功能較為簡單,主要有以下兩種:

1.給出文件名,查找目錄及其子目錄中是否存在

2.給出后綴名,查找目錄及其子目錄中相關(guān)的文件

題型一:

題目:在指定目錄下查找一個文件,如果目錄或子目錄下有查找的文件,返回文件所在的目錄,否則輸出 “當(dāng)前目錄下沒有此文件”。

package hello;
import java.io.File;
import java.util.*;
public class 第七周第二題 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner in=new Scanner(System.in);
		System.out.println("請輸入要查找的文件名:");
		String filename=in.nextLine();                   //讀取要查找的文件名稱filename;
		File dir=new File("D:\\desktop\\實(shí)驗(yàn)七 數(shù)據(jù)");      //確定要查找的目錄dir;
		boolean flag=false;                              //flag來確定是否查到文件;
		function(filename,dir,flag);                     //function函數(shù)遞歸實(shí)現(xiàn);
		
	}
	static void function(String filename,File dir,boolean flag)
	{
		
		File[]files=dir.listFiles();
		for(File file:files)
		{
			if(file.isDirectory())                      //file是目錄時,則重新調(diào)用function函數(shù);
				{
					function(filename,file.getAbsoluteFile(),flag);
				}
			if(file.isFile() && filename.equals(file.getName()))  //file時文件且文件名相同時,輸出;
			{			
					flag=true;
					System.out.println("要查找的文件路徑為:"+file.getAbsolutePath());
					break;
			}
		} 
		if(flag==true)                                 //判斷有沒有找到過文件;
			return; 
		else
		{
			System.out.print(dir.getName()+"文件夾下沒有找到此文件");
			return;
		}
	}

}

下面是運(yùn)行結(jié)果:

題型二:

判斷指定目錄及其子目錄下是否有后綴名為.java和.jpg的文件,如果有,就輸出該文件名稱和所在目錄路徑,如果沒有,輸出“*目錄下沒有.java和.jpg文件”。

package hello;
import java.util.*;
import java.io.*;
public class 第八周第一題 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("指定的目錄為:D:\\desktop");
		String Filename="D:\\desktop";                        //Filename為指定地址;
		File file=new File(Filename);
		boolean flag=false;                                   //flag判斷有沒有相關(guān)文件;
		function(Filename,file,flag);
	}
	static void function(String Filename,File file,boolean flag)
	{
		File[]files=file.listFiles();
		for(File m:files)
		{
			if(m.isDirectory())                             //m為目錄時,調(diào)用function函數(shù)(更新了絕對路徑);
			{
				function(m.getAbsolutePath(),m.getAbsoluteFile(),flag);
			}
			if(m.isFile() )                                //m為文件時
			{
				String name=m.getName();
				String houzhui=name.lastIndexOf(".")==-1 ? "" : name.substring(name.lastIndexOf(".")+1);//讀取其后綴(java還是jpg)
				if("java".equals(houzhui)||"jpg".equals(houzhui))//判斷后綴是不是java或jpg;
				{
					System.out.println("文件"+name+"所在的目錄為:"+m.getAbsolutePath());//輸出文件的絕對路徑;
					flag=true;
				}
			}
		}
		if(flag==true)       
			return;
		else
			System.out.println(Filename+"下沒有.java和.jpg文件");
	}
}

下面是運(yùn)行的結(jié)果:

到此這篇關(guān)于Java實(shí)現(xiàn)指定目錄下的文件查找詳解的文章就介紹到這了,更多相關(guān)Java指定目錄文件查找內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nacos客戶端如何獲取配置

    nacos客戶端如何獲取配置

    這篇文章主要介紹了nacos客戶端如何獲取配置方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java實(shí)現(xiàn)線程同步方法及原理詳解

    Java實(shí)現(xiàn)線程同步方法及原理詳解

    這篇文章主要介紹了Java實(shí)現(xiàn)線程同步方法及原理詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Java手寫一個日志框架的示例代碼

    Java手寫一個日志框架的示例代碼

    日志框架是一種用于記錄和管理應(yīng)用程序運(yùn)行時信息的軟件組件,它通常提供了一套API讓開發(fā)人員能夠在代碼中插入日志語句,下面我們就來學(xué)習(xí)一下如何手寫一個日志框架吧
    2023-12-12
  • Java基礎(chǔ)精講方法的使用

    Java基礎(chǔ)精講方法的使用

    方法,也稱函數(shù),如果想要重復(fù)一段或者多段代碼塊的使用,可以將這些代碼封裝成一個方法,方法具體表現(xiàn)為某種行為,使用方法可以提高代碼的復(fù)用性
    2022-05-05
  • Java中的Excel框架使用詳解

    Java中的Excel框架使用詳解

    這篇文章主要介紹了Java中的Excel框架使用詳解,Java解析、生成Excel比較有名的框架有Apache poi、jxl,但他們都存在一個嚴(yán)重的問題就是非常的耗內(nèi)存,poi有一套SAX模式的API可以一定程度的解決一些內(nèi)存溢出的問題,需要的朋友可以參考下
    2023-11-11
  • SpringBoot整合Milvus的實(shí)現(xiàn)

    SpringBoot整合Milvus的實(shí)現(xiàn)

    本文主要介紹了SpringBoot整合Milvus的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Scala文件操作示例代碼講解

    Scala文件操作示例代碼講解

    本文章向大家介紹Scala 學(xué)習(xí)筆記之文件操作,主要內(nèi)容包括其使用實(shí)例、應(yīng)用技巧、基本知識點(diǎn)總結(jié)和需要注意事項(xiàng),具有一定的參考價(jià)值,需要的朋友可以參考一下
    2023-04-04
  • Java中數(shù)學(xué)相關(guān)類的使用教程

    Java中數(shù)學(xué)相關(guān)類的使用教程

    Java是一種廣泛使用的編程語言,它提供了許多數(shù)學(xué)運(yùn)算的函數(shù)和方法,使得開發(fā)者可以輕松地進(jìn)行各種數(shù)學(xué)計(jì)算,下面這篇文章主要給大家介紹了關(guān)于Java中數(shù)學(xué)相關(guān)類使用的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • 基于SpringBoot的Dubbo泛化調(diào)用的實(shí)現(xiàn)代碼

    基于SpringBoot的Dubbo泛化調(diào)用的實(shí)現(xiàn)代碼

    這篇文章主要介紹了基于SpringBoot的Dubbo泛化調(diào)用的實(shí)現(xiàn),從泛化調(diào)用實(shí)現(xiàn)的過程來看,我們可以對自己提供所有服務(wù)進(jìn)行測試,不需要引入調(diào)用的接口,減少代碼的侵入,需要的朋友可以參考下
    2022-04-04
  • 淺談java Iterator.remove()方法的用法(詳解)

    淺談java Iterator.remove()方法的用法(詳解)

    下面小編就為大家?guī)硪黄獪\談java Iterator.remove()方法的用法(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01

最新評論