java IO流 之 FIle類基礎
package IO;
import java.io.File;
import java.io.IOException;
public class FileIO {
/**
* 構建及獲取文件名信息
* @param args
*/
public static void FileName(String[] args) {
System.out.println("路徑分隔符: "+File.pathSeparator); //路徑分隔符
System.out.println("名稱分隔符: "+File.separator);//名稱分隔符
//相對路徑 以工程為起始路徑去找到對應的文件 例如: 1.jpg
String path = "img"; //相對路徑
String name = "1.jpg";
//絕對路徑 從電腦硬盤中找對應的文件 例如:C:\Users\Yonim\Pictures\Camera Roll\1.jpg
//在java當中 “\”是特殊字符 需要反編譯才行 其中的\\ 為 \
String path2 = "C:\\Users\\Yonim\\Pictures\\Camera Roll\\2.jpg";
//String name2 = "";
File file = new File(path,name); //這是創建一個相對路徑的構造器
file =new File(new File(path),name);//第二種構建方式
System.out.println("找出文件名稱:"+file.getName());
System.out.println("找出文件路徑:"+file.getPath());
// 以絕對路徑創建的構造器
File f = new File(path2);
System.out.println("絕對路徑的文件名稱:"+f.getName());
System.out.println("絕對路徑的文件路徑:"+f.getPath());
System.out.println("上一級目錄:"+f.getParent());//如果沒有上一級目錄返回空
File url = new File("Users\\Yonim\\Pictures\\Camera Roll\\2.jpg");
//在文件沒有盤符的情況下 以工程文件名稱的盤符做為絕對路徑的盤符
System.out.println("絕對路徑的文件名稱"+url.getAbsolutePath());
}
/**
* 判斷文件信息
*/
public static void isFile(){
String path = "img";
String name = "1.jpg";
File file = new File(path,name);
System.out.println(file.exists()); //判斷文件或者文件夾是否存在,並且是否為可寫的狀態,存在並且可寫則返回true
/**
* 判斷是否文件,存在此文件時返回true
* 當不是文件或者不存在的時候都是返回false
*/
if (file.isFile()) { //是否文件
System.out.println("存在此文件");
}else if(file.isDirectory()){//是否文件夾
System.out.println("是文件夾");
}else{
System.out.println("文件不存在");
}
/**
* 判斷是否絕對路徑
* 是返回true 否則返回false
*/
if (file.isAbsolute()) {
System.out.println("是絕對路徑");
}else{
System.out.println("相對路徑");
}
/**
* 可以利用文件大小來判斷是否文件還是文件夾
* file.length不能讀取文件夾大小
*/
if (file.length()>0) {
System.out.println(file.getName()+"的文件大小為:"+file.length()+"字節");
}
}
/**
* 創建、刪除文件信息
* @throws IOException
*/
public static void newFile() throws IOException{
String path = "D:\\myImg";
String name = "1.jpg";
File file = new File(path,name);
//如果不是文件
if (!file.exists()) {
//如果存在則返回false
System.out.println("是否創建成功:"+file.createNewFile());
}
//刪除文件
if (file.delete()) {
System.out.println("刪除成功");
}else{
System.out.println("刪除錯誤,文件不可被刪除");
}
}
/**
* 操作目錄
*/
public static void operFile(){
String path = "D:\\MyImg\\test";
String name = "3.jpg";
File file = new File(path,name);
if(file.mkdir()){//如果沒有父目錄則不能創建
}
if (file.mkdirs()) {//如果沒有父目錄則連父目錄一同創建
}
}
public static void main(String[] args) {
}
}
java IO流 之 FIle類基礎