I/O流
File
File 文件對象:
File 可以表示一個文件夾
File 可以表示為一個文件
但是File不能操作文件內(nèi)容
File指定的文件可能存在也可能不存在
絕對路徑:
能夠在整個電腦里面定位到一個文件或文件夾的路徑亏掀,稱之為絕對路徑温算。
Windows使用盤符開頭的路徑,是絕對路徑巩割。
其他所有的操作系統(tǒng)以 / 開頭的表示絕對路徑。
win:
D:\test\images\mm.jpg
D:/test/images/mm.jpg
liunx:
/test/images/mm.jpg
相對路徑(推薦)
通常是指相對于某個文件夾下的位置定位。比如說相對于程序運行的文件夾來說嗦嗡,當(dāng)前文件夾使用一個 . 表示咱枉;上級文件夾使用 .. 表示欢伏。
只能相對于某個文件夾來確定位置,不能在整個電腦里面定位路徑。
所有操作系統(tǒng)都使用 . 表示當(dāng)前目錄抱究;.. 表示上級目錄。
images/mm.jpg
文件常用API介紹-1
import?java.io.File;
/**
* File 對象方法使用實例
*/
public?class?FileTest {
public?static?void?main(String[] args) {
// File.separator 可以自動根據(jù)使用的平臺切換文件路徑分隔符
// 創(chuàng)建一個File關(guān)聯(lián)一個需要操作的文件(可能存在,也可能不存在,可能是文件吓揪,也可能是文件夾)
File file =?new?File("C:"?+ File.separator?+?"test"?+ File.separator
+?"start_bg2.png");
// file.exists()//判斷File對象對應(yīng)的文件(文件夾)是否存在,存在返回true
System.out.println(file.exists());
System.out.println("是否是文件夾:"?+ file.isDirectory());//directory意為目錄、執(zhí)導(dǎo)的
System.out.println("是否是文件:"?+ file.isFile());
System.out.println("是否是隱藏文件:"?+ file.isHidden());
System.out.println("獲得文件名:"?+ file.getName());
System.out.println("獲得文件路徑:"?+ file.getPath());
System.out.println("獲得文件父路徑:"?+ file.getParent());
System.out.println("獲得文件最后修改時間:"?+ file.lastModified());
System.out.println("獲得文件大小:"?+ file.length());
}
}
文件常用API介紹-2
import java.io.File;
import java.io.IOException;
/**
* 文件操作
*
*/
public class FileTest4 {
public static void main(String[] args) throws IOException{
File file = new File("C:/test/dir/demo.txt");
//在指定位置創(chuàng)建文件
boolean flag = file.createNewFile();
System.out.println("--文件創(chuàng)建--"+flag);
System.out.println("-------------------");
//創(chuàng)建一個臨時文件
//參數(shù)1:臨時文件前綴囤官,文件名以什么開頭的
//參數(shù)2: 臨時文件后綴,文件的后綴是什么
//參數(shù)3:臨時文件存儲位置蛤虐,注意是new對象
File.createTempFile("yayadou-", ".txt", new File("c:/test/dir"));
}
}
文件夾常用API介紹-3
importjava.io.File;
/**
* 文件夾操作
*/
public class FileTest3 {
public static void main(String[] args) {
/*
File file = new File("C:/test/dir/a/b/c");
if(!file.exists()){
//boolean flag =file.mkdir();//不會創(chuàng)建父路徑党饮,單一文件夾創(chuàng)建驳庭,mkdir=mark directory(創(chuàng)建文件夾)
boolean flag = file.mkdirs();//會創(chuàng)建父路徑(推薦使用)
System.out.println("創(chuàng)建文件夾:"+flag);
}
*/
File file2 =new?File("c:/test/dir/a/b");
//刪除File對象對應(yīng)的對象,如果包含內(nèi)容(文件或者文件夾將刪除失敗)
boolean?deleteFlag = file2.delete();
System.out.println("刪除文件夾:"+deleteFlag);
}
}