最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java IO實(shí)現(xiàn)電腦搜索、刪除功能的實(shí)例

 更新時(shí)間:2016年12月31日 08:48:55   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇java IO實(shí)現(xiàn)電腦搜索、刪除功能的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

一.遞歸方法

1.遞歸就是自己調(diào)用本身的方法,前提是有方法。

2.遞歸使用

找出遞歸的規(guī)律
遞歸要有出口條件,也就是結(jié)束條件

3.注意事項(xiàng)

遞歸次數(shù)不能太多,否則會(huì)出現(xiàn)堆棧溢出現(xiàn)象
遞歸不能嵌套使用,否則出現(xiàn)死遞歸

二.IO介紹

1. i為Input輸入,O為Output輸出,API單獨(dú)把輸入和輸出流封裝成一個(gè)類(lèi),提供大量的方法供我們使用。

2. IO技術(shù)可以把數(shù)據(jù)寫(xiě)入到持久化設(shè)備(包括硬盤(pán)、光盤(pán)、U盤(pán)等),集合、數(shù)組雖然可以存儲(chǔ)讀取,但是僅僅暫存在內(nèi)存中,當(dāng)重新啟動(dòng)程序就不存在了。

3. 相對(duì)內(nèi)存這個(gè)參照物而言,把硬盤(pán)的東西讀到內(nèi)存中,稱(chēng)為輸入流。把內(nèi)存的數(shù)據(jù)寫(xiě)入到硬盤(pán)上,稱(chēng)為輸出流。

三.代碼實(shí)現(xiàn)電腦搜索的功能

1.搜索自定義后綴名的文件夾

package cn.jasonFile01; 
 
import java.io.File; 
 
/** 
 * @author Jason 
 * @2016年9月18日 下午9:12:35 
 */ 
public class FindFiles04 { 
 // 成員變量的巧用 
 // 統(tǒng)計(jì)變量可以放在成員位置 
 static int countFile = 0; 
 
 public static void main(String[] args) { 
 // 封裝父類(lèi)的file對(duì)象 
 File parent = new File("F:\\API"); 
 // 定義要查找文件的后綴名 
 String suffix = ".pdf"; 
 // 調(diào)用查找文件的方法 
 scanFiles(parent, suffix); 
 // 輸出滿(mǎn)足條件的文件個(gè)數(shù) 
 System.out.println("滿(mǎn)足條件的文件有" + countFile + "個(gè)"); 
 } 
 
 /** 
 * 這是查找符合條件的文件 
 * 1. 獲取當(dāng)前目錄下的所有子文件及其子目錄 
 * 2. 遍歷數(shù)組判斷是否是文件 
 *  是:在滿(mǎn)足后綴名的情況下,直接輸出文件所在的絕對(duì)路徑,計(jì)數(shù)器加1 
 *  否:接著遞歸 
 * 注意:如果是文件(不是目錄)調(diào)用listFiles方法的話(huà),那么返回的是null 
 */ 
 private static void scanFiles(File parent, String suffix) { 
 // 獲取當(dāng)前目錄下的所有子文件及其子目錄 
 File[] files = parent.listFiles(); 
 // 防止系統(tǒng)中沒(méi)有訪問(wèn)權(quán)的文件返回null值 
 if (files != null) 
  for (File file : files) { 
  if (file.isFile() && file.getName().endsWith(suffix)) { 
   System.out.println(file.getAbsolutePath()); 
   countFile++; 
  } else 
   scanFiles(file, suffix); 
  } 
 } 
} 

2.搜索自定義后綴名的文件夾

package cn.jasonFile01; 
 
import java.io.File; 
 
/** 

 * @author Jason 
 * @2016年9月18日 下午9:12:20 
 */ 
 
public class FindFolder { 
 // 定義統(tǒng)計(jì)變量 
 static int countFolder = 0; 
 
 public static void main(String[] args) { 
 // 封裝父類(lèi)的file對(duì)象 
 File parent = new File("F:\\a"); 
 // 定義要查找文件的后綴名 
 String suffix = "1"; 
 // 調(diào)用查找文件夾方法 
 scanFolder(parent, suffix); 
 // 輸出滿(mǎn)足條件的目錄個(gè)數(shù) 
 System.out.println("滿(mǎn)足條件的文件夾有" + countFolder + "個(gè)"); 
 } 
 
 /** 
 * 這是查找滿(mǎn)足條件的文件夾個(gè)數(shù)的方法 
 * 1. 獲取當(dāng)前目錄下的所有子文件及其子目錄 
 * 2. 遍歷數(shù)組判斷是否為目錄 
 *  是:接著遞歸 
 *  否:不管它 
 * 3. 后綴名相同輸出絕對(duì)路徑 
 * 注意:如果是文件(不是目錄)調(diào)用listFiles方法的話(huà),那么返回的是null 
 */ 
 private static void scanFolder(File parent, String suffix) { 
 // 獲取父目錄下的所有子目錄及子文件 
 File[] files = parent.listFiles(); 
 if (files != null) 
  // 遍歷數(shù)組進(jìn)行判斷 
  for (File file : files) { 
  if (file.isDirectory()) 
   scanFolder(file, suffix); 
  } 
  
 //免租條件的目錄輸出 
 if (parent.getName().endsWith(suffix)) { 
  System.out.println(parent.getAbsolutePath()); 
  countFolder++; 
 } 
 
 } 
} 

四.代碼實(shí)現(xiàn)電腦的徹底刪除功能

注意:Java中刪除不走回收站,請(qǐng)慎重使用。

package cn.jasonFile01; 
 
import java.io.File; 
 
public class ClearAll { 
 public static void main(String[] args) { 
 // 封裝父目錄為file對(duì)象 
 File parent = new File("F:\\IO修改文件名"); 
 //調(diào)用刪除方法 
 clearAll(parent); 
 
 } 
 
 /** 
 * 這是刪除父目錄下的所有子目錄和子文件的方法 
 * 1.獲取父目錄下的所有子文件及子目錄 
 * 2.變量數(shù)組并進(jìn)行判斷是否是文件 
 * 是:刪除 
 * 否:進(jìn)行遞歸 
 * 3.直到把目錄下的子文件到刪除完畢,那么在刪除所在的空文件 
 */ 
 private static void clearAll(File parent) { 
 // 獲取父目錄下的所有子文件及子目錄 
 File[] files = parent.listFiles(); 
 //1.防止系統(tǒng)文件不能方位而出現(xiàn)空指針異常 
 //2.防止系統(tǒng)路徑不存在導(dǎo)致數(shù)組為null,發(fā)生空指針異常 
 if (files != null) 
  // 遍歷數(shù)組 
  for (File file : files) { 
  if (file.isFile()) 
   file.delete(); 
  else 
   clearAll(file); 
  } 
 // 刪除文件后在刪除空文件夾 
 parent.delete(); 
 } 
} 

以上就是小編為大家?guī)?lái)的java IO實(shí)現(xiàn)電腦搜索、刪除功能的實(shí)例全部?jī)?nèi)容了,希望大家多多支持腳本之家~

相關(guān)文章

  • IDEA 啟動(dòng) Tomcat 項(xiàng)目輸出亂碼的解決方法

    IDEA 啟動(dòng) Tomcat 項(xiàng)目輸出亂碼的解決方法

    這篇文章主要介紹了IDEA 啟動(dòng) Tomcat 項(xiàng)目輸出亂碼的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Java基于Swing實(shí)現(xiàn)的打獵射擊游戲代碼

    Java基于Swing實(shí)現(xiàn)的打獵射擊游戲代碼

    這篇文章主要介紹了Java基于Swing實(shí)現(xiàn)的打獵射擊游戲代碼,包含完整的游戲事件處理與邏輯流程控制,具有不錯(cuò)的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-11-11
  • Java程序生成exe可執(zhí)行文件詳細(xì)教程(圖文說(shuō)明)

    Java程序生成exe可執(zhí)行文件詳細(xì)教程(圖文說(shuō)明)

    這篇文章主要介紹了Java程序生成exe可執(zhí)行文件詳細(xì)教程,有需要的朋友可以參考一下
    2013-12-12
  • java靜態(tài)代理的含義及用法

    java靜態(tài)代理的含義及用法

    在本篇文章里小編給大家整理的是一篇關(guān)于java靜態(tài)代理的含義及用法,有需要的朋友們可以跟著學(xué)習(xí)參考下。
    2021-06-06
  • java應(yīng)用開(kāi)發(fā)之JVM運(yùn)行時(shí)內(nèi)存分析

    java應(yīng)用開(kāi)發(fā)之JVM運(yùn)行時(shí)內(nèi)存分析

    這篇文章主要介紹了java應(yīng)用開(kāi)發(fā)之JVM運(yùn)行時(shí)內(nèi)存,文中附含圖文示例內(nèi)容分析非常簡(jiǎn)要,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • Spring在@ConditionalOnProperty注解使用詳解

    Spring在@ConditionalOnProperty注解使用詳解

    這篇文章主要介紹了Spring在@ConditionalOnProperty注解使用詳解,@ConditionalOnProperty注解是Spring Boot的條件注解,主要用法是根據(jù)配置文件中的屬性來(lái)控制某個(gè)配置類(lèi)是否生效,或者控制某個(gè)Bean是否被創(chuàng)建,需要的朋友可以參考下
    2023-11-11
  • Springboot工具類(lèi)StringUtils使用教程

    Springboot工具類(lèi)StringUtils使用教程

    這篇文章主要介紹了Springboot內(nèi)置的工具類(lèi)之StringUtils的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-12-12
  • 基于@Bean修飾的方法參數(shù)的注入方式

    基于@Bean修飾的方法參數(shù)的注入方式

    這篇文章主要介紹了@Bean修飾的方法參數(shù)的注入方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Google Guava 緩存工具使用詳解

    Google Guava 緩存工具使用詳解

    這篇文章主要介紹了Guava自加載緩存LoadingCache使用指南,通過(guò)這些內(nèi)容介紹,了解了LoadingCache的基本原理和用法,包括如何創(chuàng)建和配置緩存,以及如何結(jié)合Java?8的特性來(lái)優(yōu)化代碼,需要的朋友可以參考下
    2023-12-12
  • Eclipse連接Mysql數(shù)據(jù)庫(kù)操作總結(jié)

    Eclipse連接Mysql數(shù)據(jù)庫(kù)操作總結(jié)

    這篇文章主要介紹了Eclipse連接Mysql數(shù)據(jù)庫(kù)操作總結(jié)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-08-08

最新評(píng)論

凤庆县| 大安市| 澜沧| 勃利县| 广灵县| 阿城市| 辉县市| 文水县| 安岳县| 隆林| 鹿邑县| 莱阳市| 漠河县| 东海县| 家居| 温宿县| 凯里市| 太保市| 固镇县| 松阳县| 垦利县| 余江县| 正蓝旗| 迭部县| 宾阳县| 黄梅县| 河西区| 江门市| 车险| 顺昌县| 汉沽区| 江西省| 鲁山县| 河西区| 萝北县| 西畴县| 镇安县| 洪泽县| 新化县| 宁河县| 万安县|