package com.gdy.file
import java.io.File
import java.io.IOException
import java.util.Arrays
public class FIleDemo {
public static void main(String[] args) throws IOException {
File file = new File("data/FileTest.txt")
//1.訪問文件名相關方法
System.out.println("文件名稱:"+file.getName())
System.out.println("文件路徑:"+file.getPath())
System.out.println("文件絕對路徑:"+file.getAbsolutePath())
System.out.println("文件父目錄名稱:"+file.getParent())
System.out.println(file.getParentFile())
System.out.println("重命名文件:"+file.renameTo(file))
//2.文件檢測相關方法
System.out.println("判斷文件是否存在:"+file.exists())
System.out.println("判斷文件是否可寫"+file.canWrite())
System.out.println("判斷文件是否可讀:"+file.canRead())
System.out.println("判斷否問文件:"+file.isFile())
System.out.println("判斷是否是目錄:"+file.isDirectory())
System.out.println("判斷是否是絕對路徑:"+file.isAbsolute())
//3.獲取常規文件信息
System.out.println("返回文件最後修改日期:"+file.lastModified() )
System.out.println("返回文件內容的長度:"+file.length())
//4.文件操作相關方法
//如果文件不存在,則創建新文件,成功返回true
System.out.println("創建新文件:"+file.createNewFile())
//刪除操作
//System.out.println("刪除文件:"+file.delete())
//5.目錄操作的相關操作
File file1 = new File("data1")
System.out.println("創建一個目錄"+file1.mkdir())
// System.out.println("創建包含子目錄的文件夾:"+file1.mkdirs())
File file2 = new File("data")
//列出file對象下所有的文件夾名和文件名(***不遍歷子文件夾***)
String[] fileList = file2.list()
Arrays.asList(fileList).stream().forEach(System.out::println)
//列出FIle對象下所有的文件和文件夾
File[] filesList = file2.listFiles()
System.out.println("...................")
//列出指定規則的文件或者文件夾
String[] filelist_json = file2.list(((dir, name) -> name.endsWith(".json")||
new File(name).isDirectory()
))
Arrays.asList(filelist_json).stream().forEach(System.out::println)
//遍歷刪除指定文件夾
while (file1.exists()){
delFiles(file1)
}
}
public static void delFiles(File file){
File[] flist = file.listFiles()
if(flist.length == 0){
file.delete()
}else{
for(File file1 : flist){
if(file1.isFile()){
file1.delete()
}else if(file1.isDirectory()){
File[] files = file1.listFiles()
if(files.length == 0){
file1.delete()
}else {
delFiles(file1)
}
}
}
}
}
}
文件名稱:FileTest.txt
文件路徑:data\FileTest.txt
文件絕對路徑:D:\soft\IDEAProject\workspace\LearnJava\data\FileTest.txt
文件父目錄名稱:data
data
重命名文件:true
判斷文件是否存在:true
判斷文件是否可寫true
判斷文件是否可讀:true
判斷否問文件:true
判斷是否是目錄:false
判斷是否是絕對路徑:false
返回文件最後修改日期:1519641101607
返回文件內容的長度:10
創建新文件:false
創建一個目錄true
FileTest.txt
FileTest.txt1
nzy
nzy_whs_count.json
nzy_whs_count_20.json
nzy_whs_count_30.json
suzhou
suzhou_home.json
suzhou_work.json
...................
nzy_whs_count.json
nzy_whs_count_20.json
nzy_whs_count_30.json
suzhou_home.json
suzhou_work.json