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

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

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

一.遞歸方法

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è)類,提供大量的方法供我們使用。

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

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

三.代碼實(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) { 
 // 封裝父類的file對(duì)象 
 File parent = new File("F:\\API"); 
 // 定義要查找文件的后綴名 
 String suffix = ".pdf"; 
 // 調(diào)用查找文件的方法 
 scanFiles(parent, suffix); 
 // 輸出滿足條件的文件個(gè)數(shù) 
 System.out.println("滿足條件的文件有" + countFile + "個(gè)"); 
 } 
 
 /** 
 * 這是查找符合條件的文件 
 * 1. 獲取當(dāng)前目錄下的所有子文件及其子目錄 
 * 2. 遍歷數(shù)組判斷是否是文件 
 *  是:在滿足后綴名的情況下,直接輸出文件所在的絕對(duì)路徑,計(jì)數(shù)器加1 
 *  否:接著遞歸 
 * 注意:如果是文件(不是目錄)調(diào)用listFiles方法的話,那么返回的是null 
 */ 
 private static void scanFiles(File parent, String suffix) { 
 // 獲取當(dāng)前目錄下的所有子文件及其子目錄 
 File[] files = parent.listFiles(); 
 // 防止系統(tǒng)中沒有訪問權(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) { 
 // 封裝父類的file對(duì)象 
 File parent = new File("F:\\a"); 
 // 定義要查找文件的后綴名 
 String suffix = "1"; 
 // 調(diào)用查找文件夾方法 
 scanFolder(parent, suffix); 
 // 輸出滿足條件的目錄個(gè)數(shù) 
 System.out.println("滿足條件的文件夾有" + countFolder + "個(gè)"); 
 } 
 
 /** 
 * 這是查找滿足條件的文件夾個(gè)數(shù)的方法 
 * 1. 獲取當(dāng)前目錄下的所有子文件及其子目錄 
 * 2. 遍歷數(shù)組判斷是否為目錄 
 *  是:接著遞歸 
 *  否:不管它 
 * 3. 后綴名相同輸出絕對(duì)路徑 
 * 注意:如果是文件(不是目錄)調(diào)用listFiles方法的話,那么返回的是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ī)淼膉ava 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)目輸出亂碼的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(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ì)教程(圖文說明)

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

    這篇文章主要介紹了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)用開發(fā)之JVM運(yùn)行時(shí)內(nèi)存分析

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

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

    Spring在@ConditionalOnProperty注解使用詳解

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

    Springboot工具類StringUtils使用教程

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

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

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

    Google Guava 緩存工具使用詳解

    這篇文章主要介紹了Guava自加載緩存LoadingCache使用指南,通過這些內(nèi)容介紹,了解了LoadingCache的基本原理和用法,包括如何創(chuàng)建和配置緩存,以及如何結(jié)合Java?8的特性來優(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)論

拜泉县| 永寿县| 图们市| 桂平市| 泸州市| 永定县| 库尔勒市| 温州市| 沐川县| SHOW| 莱州市| 山阳县| 赤壁市| 永泰县| 鸡东县| 卢湾区| 胶南市| 商丘市| 河曲县| 石楼县| 拜泉县| 长岭县| 遵化市| 布尔津县| 昌图县| 葫芦岛市| 乌鲁木齐县| 新龙县| 邻水| 龙山县| 南投县| 乐山市| 京山县| 简阳市| 陆川县| 鹤壁市| 郓城县| 大悟县| 山西省| 云安县| 合山市|