不多說,直接上干貨!
獲取文件名稱、獲取文件路徑、獲取文件大小、獲取文件修改時間
FileMethodDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * File對象的常見方法。 * 1,獲取。 * 1.1 獲取文件名稱。 * 1.2 獲取文件路徑。 * 1.3 獲取文件大小。 * 1.4 獲取文件修改時間。 */ getDemo(); } public static void getDemo(){//獲取 // File file = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt");//這是絕對路徑。 File對象 File file = new File("a.txt");//這是相對路徑 String name = file.getName();//獲取文件名稱 String absPath = file.getAbsolutePath();//獲取文件路徑,是絕對路徑。 String path = file.getPath();//獲取文件路徑,是相對路徑。 long len = file.length(); long time = file.lastModified();//獲取文件修改時間 Date date = new Date(time); DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); String str_time = dateFormat.format(date); System.out.println("parent:"+file.getParent()); System.out.println("name:"+name); System.out.println("absPath:"+absPath); System.out.println("path:"+path); System.out.println("len:"+len); System.out.println("time:"+time); System.out.println("str_time:"+str_time); } }
創建與刪除
FileMethodDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo{ /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * File對象的常見方法。 * 創建與刪除。 */ createAndDeleteDemo(); } public static void createAndDeleteDemo() throws IOException { File dir = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt"); boolean b = dir.mkdir();//make directory System.out.println("b="+b); dir.mkdirs();//創建多級目錄 System.out.println(dir.delete()); //文件的創建和刪除。 File file = new File("file.txt"); /* * 和輸出流不一樣,如果文件不存在,則創建,如果文件存在,則不創建。 */ boolean b1 = file.createNewFile(); System.out.println("b1="+b1); boolean b2 = file.delete(); System.out.println("b2="+b2); } }
判斷
FileMethodDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * File對象的常見方法。 * 判斷。 */ isDemo(); } public static void isDemo() throws IOException{ File f = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt"); f.mkdir(); f.createNewFile(); boolean b = f.exists(); System.out.println("b="+b); // 最好先判斷是否存在。 System.out.println(f.isFile()); System.out.println(f.isDirectory()); } }
重命名
FileMethodDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * File對象的常見方法。 * 4, 重命名 */ renameToDemo(); } public static void renameToDemo() { File f1 = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt"); File f2 = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\b.txt"); boolean b = f1.renameTo(f2); System.out.println("b="+b); } }
系統根目錄
FileMethodDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * File對象的常見方法。 * 系統根目錄 */ listRootsDemo(); } public static void listRootsDemo() { File[] files = File.listRoots(); for(File file : files){ System.out.println(file); } } }
容量獲取
FileMethodDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * File對象的常見方法。 * 系統根目錄和容量獲取 */ listRootsDemo(); } public static void listRootsDemo() { File file = new File("D:\\"); System.out.println("getFreeSpace:"+file.getFreeSpace()); System.out.println("getTotalSpace:"+file.getTotalSpace()); System.out.println("getUsableSpace:"+file.getUsableSpace()); } }
獲取目錄內容
FileListDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; public class FileListDemo { /** * @param args */ public static void main(String[] args) { listDemo(); } public static void listDemo() { File file = new File("D:\\"); /* * 獲取當前目錄下的文件以及文件夾的名稱,包含隱藏文件。 * 調用list方法的File對象中封裝的必須是目錄。 * 否則會發生NullPointerException * 如果訪問的系統級目錄也會發生空指針異常。 * 如果目錄存在但是沒有內容,會返回一個數組,但是長度為0. */ String[] names = file.list(); System.out.println(names.length); for(String name : names){ System.out.println(name); } } }
過濾器
FileListDemo.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import zhouls.bigdata.DataFeatureSelection.test.FilterByHidden; import zhouls.bigdata.DataFeatureSelection.test.SuffixFilter; public class FileListDemo { /** * @param args */ public static void main(String[] args) { listDemo(); listDemo_2(); listDemo_3(); listDemo_4(); } public static void listDemo_4() { File dir = new File("D:\\"); String[] names = dir.list(new FilterByJava());//FilterByJava.java for(String name : names){ System.out.println(name); } } public static void listDemo_3() { File dir = new File("D:\\"); File[] files = dir.listFiles(new FilterByHidden());//FilterByHidden.java for(File file : files){ System.out.println(file); } } public static void listDemo_2() { File dir = new File("D:\\"); String[] names = dir.list(new SuffixFilter(".txt")); for(String name : names){ System.out.println(name); } } public static void listDemo() { File file = new File("D:\\"); /* * 獲取當前目錄下的文件以及文件夾的名稱,包含隱藏文件。 * 調用list方法的File對象中封裝的必須是目錄。 * 否則會發生NullPointerException * 如果訪問的系統級目錄也會發生空指針異常。 * 如果目錄存在但是沒有內容,會返回一個數組,但是長度為0. */ String[] names = file.list(); System.out.println(names.length); for(String name : names){ System.out.println(name); } } }
FilterByHidden.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.FileFilter; public class FilterByHidden implements FileFilter { public boolean accept(File pathname) { return !pathname.isHidden(); } }
FilterByJava.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.FilenameFilter; public class FilterByJava implements FilenameFilter { public boolean accept(File dir, String name) { System.out.println(dir+"---"+name); return name.endsWith(".java");//name是每個文件名稱 , .java即凡是.java文件全為真 } }
SuffixFilter.java
package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.FilenameFilter; public class SuffixFilter implements FilenameFilter { private String suffix ; public SuffixFilter(String suffix) { super(); this.suffix = suffix; } public boolean accept(File dir, String name) { return name.endsWith(suffix); } }