java File類
阿新 • • 發佈:2017-07-01
構造 ffi struts 表示 exec pcs end absolute turn
今天我要總結一下java File類。這個是一個很重要的類。
首先是我畫的思維導圖。
還寫了一些自己寫的代碼。
/** * Date : 2017/6/24 * Author : Hsj * Description : */ public class Demo { /** * File(pathname)表示文件或文件夾路徑 * File(String parent,child); * File(File parent,child); */ @Test public void fun() { //第一種構造方法 File file = new File("F:\\BaiduYunDownload\\01、第一階段java基礎(更多視頻教程 www.pcsky.wang)\\day19\\day19\\video\\001_今日內容.avi"); System.out.println("文件路徑是否存在:" + file.exists()); File file2 = new File("ddd.txt");//項目文件夾 System.out.println(file2.exists()); //第二種構造方法 String parent = "F:\\BaiduYunDownload\\01、第一階段java基礎(更多視頻教程 www.pcsky.wang)\\day19\\day19\\video"; String child = "001_今日內容.avi"; File file3 = new File(parent, child); System.out.println(file3.exists()); //第三種構造函數 File file4 = new File("F:\\BaiduYunDownload\\01、第一階段java基礎(更多視頻教程 www.pcsky.wang)\\day19\\day19\\video");//封裝成File String child2 = "001_今日內容.avi"; File file5 = new File(file4, child2); System.out.println(file5.exists()); } /** * 創建文件 * createNewFile();//創建文件夾,有就創建返回true,沒有就放回false * mkdir();創建文件夾 * mkdirs()創建文件夾和父文件夾 */ @Test public void fun2() { /* File file = new File("yyy.txt"); try { boolean newFile = file.createNewFile(); System.out.println(newFile); } catch (IOException e) { e.printStackTrace(); }*/ /* File file2 = new File("make"); boolean mkdir = file2.mkdir(); System.out.println(mkdir);*/ File file3 = new File("make//make//m"); boolean mkdirs = file3.mkdirs(); System.out.println(mkdirs); } /** * renameTo()重命名或者剪切 * delete()刪除文件或者文件夾 * 文件夾中不能包含文件夾或者文件 * 文件夾中不能包含文件夾或者文件 */ @Test public void fun3() { /* File file = new File("make//make/m/xx.txt"); File file2 = new File("ddd.txt"); boolean b = file2.renameTo(file);//完成文件的重命名或者指定盤符剪切 System.out.println(b);*/ /* File file3=new File("yyy.txt"); file3.delete();*/ File file4 = new File("make//make//m/xx.txt"); boolean delete = file4.delete(); System.out.println(delete); } /** * 判斷功能 */ @Test public void fun4() { File file = new File("zzz.txt"); /* file.setWritable(false);//設置不可寫 System.out.println(file.canWrite());*/ /* file.setExecutable(false);*/ /* try { file.createNewFile();創建文件 } catch (IOException e) { e.printStackTrace(); }*/ } /** * 獲取功能 * public String getAbsolutePath():獲取絕對路徑 * public String getPath():獲取路徑 * public String getName():獲取名稱 * public long length():獲取長度。字節數 * public long lastModified():獲取最後一次的修改時間,毫秒值 * public String[] list():獲取指定目錄下的所有文件或者文件夾的名稱數組 * public File[] listFiles():獲取指定目錄下的所有文件或者文件夾的File數組 */ @Test public void fun5() { /* File file=new File("zzz.txt"); System.out.println(file.getAbsoluteFile());///獲取絕對路徑 System.out.println(file.getParent());//只能用於路徑,獲取父路徑 System.out.println(file.getPath());//獲取構造函數傳過來的路徑 System.out.println(file.getName());//獲取文件名 System.out.println(file.length()); System.out.println(file.lastModified());//獲取最後一次修改的時間毫秒值 Date d=new Date(file.lastModified()); SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); System.out.println(sdf.format(d));*/ /* File file=new File("C:\\Users\\ABC\\Desktop\\javaWork\\Struts2\\Struts2MavenDemo3"); String [] fileList=file.list(); for (String s:fileList){ System.out.println(s); } System.out.println(file.getAbsoluteFile());*/ } public static void isSuffixJpg(File file, List<String> mlist) { File[] fileList = file.listFiles();//獲取file if (fileList != null) { for (File f : fileList) { if (f.isDirectory()) { isSuffixJpg(f, mlist); } else { String fileName = f.getName(); if (fileName.endsWith(".jpg")) mlist.add(f.getName()); } } } } @Test public void fun6() { File file = new File("F:\\我的文件\\我的圖片\\TU"); List<String> list = new ArrayList<>(); isSuffixJpg(file, list); System.out.println(list.size()); for (String s : list) { System.out.println(s); } } //遍歷指定文件夾下的文件 @Test public void fun7() { File file = new File("F://"); String[] sList = file.list(new FilenameFilter() { @Override public boolean accept(File dir, String name) { System.out.println(dir.getName()); System.out.println(); return true; } }); for (String s:sList) { System.out.println(s); } } @Test public void fun8(){ List<String> sList=new ArrayList<>(); File file=new File("F:\\我的文件\\我的圖片\\TU"); isSuffix(file,sList); for (String s:sList ) { System.out.println(s); } } public static void isSuffix(File file,List<String> mlist){ File[] files = file.listFiles(); for (File f:files){ if(f.isDirectory()){ isSuffix(f,mlist); } else { String name = f.getName(); if(name.endsWith(".jpg")){ mlist.add(name); } } } } @Test public void fun9(){ File file= new File("D://"); String [] sList=file.list(new FilenameFilter() { @Override public boolean accept(File dir, String name) { /*System.out.println(dir);//封裝的目錄D盤 System.out.println(name);//目錄下文件的名字*/ File file2=new File(dir,name); return file2.isFile()&&file2.getName().endsWith(".jpg"); } }); for (String s:sList){ System.out.println(s); } } @Test public void fun10(){ File file=new File("D://"); File [] files=file.listFiles(new FileFilter() { @Override public boolean accept(File pathname) { return true; } }); for (File f:files){ System.out.println(f.getName()); } } }
java File類