IO流_檔案過濾器改進輸出指定目錄下指定字尾名的檔名稱案例、帶檔名稱過濾器的list()方法的原始碼
package cn.itcast_08; import java.io.File; import java.io.FilenameFilter; /* * 判斷E盤目錄下是否有後綴名為.jpg的檔案,如果有就輸出此檔案的名稱 * A:先獲取所有的,然後遍歷的時候,依次判斷,如果滿足條件就輸出 * B:獲取的時候就已經是滿足條件的了,然後輸出即可。 * * 要想實現這個效果,就必須實現一個介面:檔名稱過慮器 * public String[] list(FilenameFilter filter) * public File[] listFiles(FilenameFilter filter) */ public class FileDemo2 { public static void main(String[] args) { // 建立檔案物件 File file = new File("e:\\"); // 獲取該檔案下所有檔案或者資料夾的String陣列 // public String[] list(FilenameFilter filter) String[] strArray = file.list(new FilenameFilter() { @Override public boolean accept(File dir, String name) { // return false; // return true; // 通過這個測試,我們就知道了,到底把這個檔案或者資料夾的名稱加不加到陣列中,取決於這裡的返回值是true還是false // 所以,這個true或者false應該是通過某種判斷得到的 // System.out.println(dir + "---" + name); // File files = new File(dir, name); // System.out.println(files); // boolean flag = files.isFile(); // boolean flag2 = name.endsWith(".jpg"); // return flag && flag2; return new File(dir, name).isFile() && name.endsWith(".jpg"); } }); // 遍歷 for (String s : strArray) { System.out.println(s); } } }
public String[] list(FilenameFilter filter) { String names[] = list(); if ((names == null) || (filter == null)) { return names; } ArrayList v = new ArrayList(); for (int i = 0 ; i < names.length ; i++) { if (filter.accept(this, names[i])) { v.add(names[i]); } } return (String[])(v.toArray(new String[v.size()])); }
相關推薦
IO流_檔案過濾器改進輸出指定目錄下指定字尾名的檔名稱案例、帶檔名稱過濾器的list()方法的原始碼
package cn.itcast_08; import java.io.File; import java.io.FilenameFilter; /* * 判斷E盤目錄下是否有後綴名為.jpg
IO流_複製指定目錄下指定字尾名的檔案並修改名稱案例
package cn.itcast_04; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; impo
使用者登入使用java的IO流實現將資料儲存到data目錄下
一、效果展示 1、最初可以看到data/data目錄下該專案只有一個cache資料夾和lib檔案 第一次執行程式,使用者名稱和密碼皆為空。 當我們輸入使用者名稱和密碼後,點選登入專案目錄下出現名為info.txt的文件,開啟它可以看到原先輸入的使用者名稱和密碼。 第二次執行
刪除指定目錄下指定字尾的檔案
//定時清除計劃任務日誌檔案,避免佔用太大磁碟空間 $folderpath = "/www/server/log";//要操作的目錄 $deltype = array('log'); foreach ($deltype as $file_type) { clearn_
寫個複製指定目錄下指定格式檔案到指定目錄下的方法
package com.test1; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; public class CopyTest { pr
遍歷指定目錄下指定格式的檔案
/* **path為指定的目錄路徑,遍歷該目錄下的檔案,找出指定格式(.mp3)的檔案 **並將檔名分組分別寫入.txt檔案,方便多程序處理 */ #define SINGLENUM 10 int searchdir( char *path ) { unsigned i
Linux下給指定目錄下指定文件類型生成md5文件
shell linux md5 對指定目錄下擴展名為.asset,.manifest,.wem,.bnk的文件計算md5並匯總到指定文件中。md5文件內容格式: 文件名,md5類似:Audio_Knives_Skill_1_43_9E69E797.wem,bc87ec6bce97e93824a0f
Java 獲取指定目錄下指定字尾名的檔名稱
前面我們學習了File獲取指定路徑下的所有檔案或者資料夾的名稱,還有獲取指定路徑下所有的檔案物件。這篇,我們分別利用這兩個方法來做一個練習題,例如輸出桌面檔案中所有的png檔名稱。最後簡單看看檔案過濾器的使用,也通過解決這個問題。 1. 檔名稱方法 如果你桌面沒有png檔案,你可以換成jpg
c++ 得到指定目錄下指定檔名 windows vs2010
c++ 得到指定目錄下指定檔名方法頗多,網上尋找總結有: 1. 主要思路是使用第三方庫 dirent.h 檔案來完成 資料結構: struct dirent { long d_ino; /* inode number 索引節點號
Java IO流中檔案的處理以及查詢指定檔案的例項
檔案處理 1、 File:檔案和目錄(資料夾)路徑名的抽象變現形式(並不一定真實存在) 2、 構造方法: a) File (String pathname) 根據一個路徑得到File物件 b) File(String parent, String child)根據一個目錄和一個子檔案/目
【 I/O流】檔案輸入與輸出(Scanner)& Scanner和io流讀寫有何區別?(待填坑)
對檔案進行讀取,僅需要用File物件構造一個Scanner物件Scanner in= new Scanner(Paths.get("myfile.tet"),"UTF-8");如果檔名中含反斜槓符號,需要在每個反斜槓之前加一個額外的反斜槓如:“c:\\mydirectory\
java-IO流(File對象-深度遍歷指定目錄下的文件夾和文件)
true file turn ren 文件夾 int tsa http absolut 需求:遍歷這個樹狀結構 File(String pathname) ‘\\‘為了轉義‘\‘ // 通過抽象路徑pathname 創建一個新的文件或者目錄 Fil
java基礎IO流 復制鍵盤錄入的目錄,復制其中的.java文件到指定目錄,指定目錄中有重名,則改名 對加密文件計算字母個數
tac exceptio lean urn ext java基礎 reader ring 完成 package com.swift.jinji; import java.io.BufferedInputStream; import java.io.BufferedOut
IO流系列一:輸入輸出流的轉換
pst 取出 nal block each bytearray puts write 為什麽 輸入流轉字節數組的原理1、讀取輸入流,每一小段 讀一次,取出 byteArray 。2、將該一小段byteArray寫入到字節輸出流ByteOutStream。直到不能從輸入流再讀
java ->IO流_序列化流與反序列化流
set final found class文件 ati 技術分享 保存到文件 back 序列化對象 序列化流與反序列化流 用於從流中讀取對象的操作流 ObjectInputStream 稱為 反序列化流 用於向流中寫入對象的操作流 ObjectOutputStream
java ->IO流_打印流
形式 file temp ava println exception string for true 打印流的概述 打印流添加輸出數據的功能,使它們能夠方便地打印各種數據值表示形式. 打印流根據流的分類: 永遠不會拋出IO異常 l 字節打印流 PrintStream l
利用IO流一次性讀取檔案中的所有內容,利用IO流下載檔案
利用IO流一次性讀取檔案中的所有內容 讀取檔案效率最快的方法就是一次全讀進來,使用readline()之類的方法,可能需要反覆訪問檔案,而且每次readline()都會呼叫編碼轉換,降低了速度,所以,在已知編碼的情況下,按位元組流方式先將檔案都讀入記憶體,再一次性編碼轉換是最快的方式
利用IO流實現檔案拷貝
檔案的拷貝,只需將檔案位元組輸入流和輸出流結合起來即可 package com.jianshun; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; impo
【Java筆記】IO流中檔案複製及異常處理
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class Main
147_IO_節點流_位元組流_檔案讀取_寫出_追加檔案
檔案的讀取 Test01_InputStream.java package _02.io.byteStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNot