国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java文件操作(遍歷目錄中的文件,找到并刪除有指定關鍵字的文件)

這篇具有很好參考價值的文章主要介紹了Java文件操作(遍歷目錄中的文件,找到并刪除有指定關鍵字的文件)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

對于通過java對文件繼續(xù)讀取和寫入的操作推薦看讀取文件和寫入文件操作

題目

????????掃描指定目錄中的文件,并找到名稱中包含指定字符的所有普通文件(不包括目錄),并后續(xù)詢問用戶是否要刪除該文件

題目分析

? ? ? ? 實際上題目就要求我們對一個指定的目錄下的文件進行遍歷,并找出文件名稱中帶有指定字符的普通文件,并詢問用戶是否需要刪除該文件

代碼展示

package 文件操作;

import java.io.File;
import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: wuyulin
 * Date: 2023-08-07
 * Time: 11:23
 */

//文件操作練習
//掃描指定目錄,并找到名稱中包含指定字符的所有普通文件(不包括目錄),并后續(xù)詢問用戶是否要刪除該文件
public class Demo5 {
    private static Scanner scanner=new Scanner(System.in);
    public static void main(String[] args) {
        System.out.print("請輸入要進行查找的根目錄路徑:");
        //將用戶輸入的根目錄地址作為參數(shù)實例化一個File類型的對象
        File rootDir=new File(scanner.next());
        if(!rootDir.isDirectory()){
            System.out.println("輸入的路徑不是一個合法目錄");
            return;
        }
        System.out.print("請輸入要刪除的文件的關鍵字:");
        String word=scanner.next();
        //開始遍歷目錄中的數(shù)據(jù)
        recurDir(rootDir,word);
    }

    //通過深度優(yōu)先遍歷去遞歸遍歷完目錄中的數(shù)據(jù)
    private static void recurDir(File rootDir,String word){
        //通過listFiles方法獲得rootDir根目錄下的所有文件
        File[] files=rootDir.listFiles();
        //當目錄是非法的目錄,或是空的目錄就直接return
        if(files==null||files.length==0){
            return;
        }
        for(File f:files){
            //打印每一個遍歷到的文件的路徑,進行監(jiān)視
            System.out.println(f.getAbsolutePath());
            //當前遍歷到的這個文件是目錄的話就要遞歸進入這個目錄,去遍歷該目錄中的內(nèi)容
            if(f.isDirectory()){
                recurDir(f,word);
            }else { //當前遍歷到的文件是普通文件,就要判斷是否含有關鍵詞,是否需要刪除
                deleteFile(f,word);
            }
        }
    }

    private static void deleteFile(File file,String word){
        if(!file.getName().contains(word)){
            return;
        }
        System.out.println("找到了"+file.getAbsolutePath()+"文件,是否需要刪除(Y/N)");
        String choice=scanner.next();
        //choice是一個String類型的對象,所以choice是一個引用,指向String對象所在內(nèi)存空間的地址
        //所以String類型的對象進行比較要使用equals
        if(choice.equals("y")||choice.equals("Y")){
            file.delete();
        }
    }
}

? ? ? ? 1,首先對于指定目錄下文件的遍歷,采用的是深度優(yōu)先遍歷的思想,當我們遍歷文件的時候要是遇到的是普通的文件,就判斷名稱是否含有指定字符,要是遇到目錄,就要進行遞歸,進入目錄中遍歷該目錄中的文件,繼續(xù)進行相同的操作

? ? ? ? 2.通過目錄對象調(diào)用listFiles方法可以獲得該目錄下所有的文件,將其存入文件數(shù)組中,遍歷文件數(shù)組中的每一個文件,當該文件是目錄,那么就要進行遞歸,進入該目錄中進行相同的操作,要是該文件是普通文件,就要進行判斷,詢問用戶,刪除等操作

? ? ? ? 3.在deleteFile方法中,通過file.getName().contains(word)獲得文件的名稱并判斷文件名稱中是否含有指定字符word

? ? ? ? 4.當判斷用戶輸入的時候由于choice是String類型,是對象,所以choice只是一個引用(地址),所以不能直接用==來判斷是否相等,要通過調(diào)用equals方法才能判斷值是否相等。文章來源地址http://www.zghlxwxcb.cn/news/detail-637646.html

到了這里,關于Java文件操作(遍歷目錄中的文件,找到并刪除有指定關鍵字的文件)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Linux定時刪除指定目錄下文件

    1,例如刪除root/tmp下的所有緩存文件,tmp 及下面的所有文件與文件夾都刪除后,再重新建立tmp文件夾 /root/tmp 2,給文件賦予執(zhí)行權限 3,添加Linux中的定時任務, 查看crontab 任務 https://www.cnblogs.com/mr-wuxiansheng/p/14433304.html?ivk_sa=1024320u

    2024年02月16日
    瀏覽(77)
  • shell腳本實現(xiàn)刪除服務器指定目錄下文件方法

    上述腳本中,find 命令用于查找指定目錄下4天以前的文件,并將其刪除。其中,-type f 表示只查找普通文件,不包括目錄和符號鏈接等其他類型的文件;-mtime +3 表示查找修改時間早于3天前的文件;-delete 表示刪除查找到的文件。 腳本中的 $folder_path 可以替換為實際的目錄路徑

    2023年04月19日
    瀏覽(23)
  • Linux :: 【基礎指令篇 :: 文件及目錄操作:(7)】:: cp:指定文件或目錄的拷貝及指定拷貝到指定路徑(與重命名)

    前言:本篇是 Linux 基本操作篇章的內(nèi)容! 筆者使用的環(huán)境是基于騰訊云服務器:CentOS 7.6 64bit。 學習集: C++ 入門到入土!?。W習合集 Linux 從命令到網(wǎng)絡再到內(nèi)核!學習合集 目錄索引: 1. 基本語法及功能 2. 常用可選項說明 3. 文件基本拷貝操作 - - 3.1 指定文件拷貝到當前

    2024年02月03日
    瀏覽(98)
  • Linux :: 【基礎指令篇 :: 文件及目錄操作:(6)】:: rmidr / rm:刪除空目錄、刪除非空目錄及刪除文件指令

    前言:本篇是 Linux 基本操作篇章的內(nèi)容! 筆者使用的環(huán)境是基于騰訊云服務器:CentOS 7.6 64bit。 學習集: C++ 入門到入土?。?!學習合集 Linux 從命令到網(wǎng)絡再到內(nèi)核!學習合集 目錄索引: 1. rmdir / rm 基本語法及功能 2. rmdir 基本使用測試 (看操作代碼) - - 2.1 創(chuàng)建一個空目錄

    2024年02月05日
    瀏覽(25)
  • Linux筆記之刪除指定目錄下除最新修改的以 .pack 為擴展名的文件之外的所有文件

    code review! 這段代碼是使用C++語言編寫的,它執(zhí)行了一系列命令來刪除指定目錄下的舊文件。讓我逐行解釋代碼的功能: 首先,聲明并初始化了一個名為 cmd 的 std::string 變量,用于存儲要執(zhí)行的命令。命令的內(nèi)容是一個字符串,它由多個子命令以管道符( | )連接而成。 接下

    2024年02月04日
    瀏覽(22)
  • 【筆記】Java中for循環(huán)遍歷刪除操作

    在Java中,有些場景需要遍歷集合中的元素,然后根據(jù)條件進行刪除元素的操作。如果使用傳統(tǒng)的for循環(huán)遍歷方式來刪除元素,很可能出錯或發(fā)生意想不到的問題。推薦使用 迭代器iterator 完成 1. 推薦使用 迭代器方式****刪除 阿里規(guī)約:【強制】不要在 foreach 循環(huán)里進行元素的

    2024年02月11日
    瀏覽(15)
  • MFC的文件操作——獲取指定文件夾下面所有文件路徑和刪除指定文件夾下面所有文件

    目錄 1.獲取指定文件夾下面所有文件路徑 ?2.刪除指定文件夾下面所有文件 3.MFC的CString 字符串操作 4.MFC的 Int類型 與 Htuple類型數(shù)據(jù)之間轉(zhuǎn)換 ?5.上述提及的函數(shù)應用 6.MFC與Halcon聯(lián)合編程,獲取halcon異常 7.MFC獲取指定路徑下的文件夾路徑 ? ? ? ? ? ①、文件夾路徑獲取方式 ②

    2024年02月16日
    瀏覽(95)
  • 刪除Github倉庫中的指定的文件或文件夾

    刪除Github倉庫中的指定的文件或文件夾

    在Github 倉庫中是無法通過鼠標操作直接刪除文件和文件夾的,那只能通過 git 命令來執(zhí)行刪除操作,當我們想刪除 First 分支中的 folder 文件夾及其內(nèi)部的文件? 和 file.c 文件? 時 1.當電腦存在對應的本地文件夾時,直接拉取遠程信息,并更新至最新數(shù)據(jù)。? 這時文件中的數(shù)據(jù)

    2024年02月08日
    瀏覽(38)
  • Ansible批量操作(上傳文件、刪除文件&指定文件內(nèi)容、執(zhí)行sh文件等)

    Ansible批量操作(上傳文件、刪除文件&指定文件內(nèi)容、執(zhí)行sh文件等)

    官方網(wǎng)站 https://www.ansible.com/ 一、Ansible 簡介 1、Ansible是新出現(xiàn)的自動化運維工具,完全基于Python開發(fā),集合了眾多運維工具(puppet、chef、func、fabric)的優(yōu)點,實現(xiàn)了批量系統(tǒng)配置、批量程序部署、批量運行命令等功能。 2、Ansible是基于 paramiko 開發(fā)的,并且基于模塊化工作,

    2024年04月16日
    瀏覽(20)
  • Linux :: 【基礎指令篇 :: 文件及目錄操作:(4)】:: mkdir :: 創(chuàng)建目錄:指定路徑單個目錄創(chuàng)建及一次性創(chuàng)建多級目錄

    前言:本篇是 Linux 基本操作篇章的內(nèi)容! 筆者使用的環(huán)境是基于騰訊云服務器:CentOS 7.6 64bit。 學習集: C++ 入門到入土?。。W習合集 Linux 從命令到網(wǎng)絡再到內(nèi)核!學習合集 目錄索引: 1. 基本語法及功能 2. 基本使用示例 - - 2.1 當前目錄下創(chuàng)建指定新目錄 - - 2.2 指定目錄下

    2024年02月06日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包