java本地文件操作

date: 2017-05-25 13:29:48


學而不思則罔,思而不學則殆。


java本地文件操作

一、File類簡介
二、文件的創(chuàng)建、刪除、重命名
三、文件夾的創(chuàng)建、重命名、刪除
四、文件屬性的讀取
五、文件屬性的設(shè)置
六、遍歷文件夾
七、文件的簡單讀寫

一、File類的簡介

package file;
import java.io.File;
public class HelloFile {
    public static void main(String[] args) {
        //創(chuàng)建文件對象
        File file = new File("hello.txt");
        //判斷文件 ,返回布爾
        file.isFile();
        System.out.println(file.isFile());
        //路徑(文件夾)
        file.isDirectory();
        System.out.println(file.isDirectory());
    }
}

運行結(jié)果:

false
false

二、文件的創(chuàng)建、刪除、重命名

public class HelloFile {
    public static void main(String[] args) {
        //創(chuàng)建文件對象
        File file = new File("hello.txt");
        //hello.txt會存在于當前目錄
        //相對路徑格式:xxx//hello.txt
        //絕對路徑格式:D://AAA//BBB//hello.txt
        //"../hello.txt" 表示上一級文件結(jié)構(gòu)
        //是否存在
        if(file.exists()){
        //文件
        System.out.println(file.isFile());
        //路徑(文件夾)
        System.out.println(file.isDirectory());
        //重命名
        //文件結(jié)構(gòu)必須處于同一個分區(qū)
        //文件處于不同的分區(qū),需要使用文件的拷貝,而不是重命名
//        File nameto = new File("src/new Hello.txt");
//        file.renameTo(nameto);
        //文件刪除
//        file.delete();
//        System.out.println("文件刪除成功");
        }else {
            System.out.println("文件不存在");
            //創(chuàng)建文件
            try {
                file.createNewFile();
                System.out.println("文件已經(jīng)成功創(chuàng)建");
            } catch (IOException e) {
                System.out.println("文件無法創(chuàng)建");
            }
        }

    }

}

三、文件夾的創(chuàng)建、重命名、刪除

//文件夾的創(chuàng)建、重命名、刪除
public class HelloFile {

    public static void main(String[] args) {

       //文件夾的創(chuàng)建
        File folder = new File("my new folder");
        folder.mkdir();
        System.out.println("文件夾創(chuàng)建完成");

       //關(guān)于folder.mkdir(),返回一個布爾類型
        if(folder.mkdir()){
            System.out.println("文件夾創(chuàng)建完成");
        }else{
            if(folder.exists()){
                System.out.println("文件夾已經(jīng)存在不用創(chuàng)建了");
            }else{
                System.out.println("文件夾創(chuàng)建失敗");
            }
        }

        //文件夾的重命名
        File folder = new File("my new folder");
        File newfolder = new File("my new folder-new");
        if(folder.renameTo(newfolder)){//返回值布爾類型
            System.out.println("done");
        }else{
            System.out.println("fail");
        }

       //文件夾的刪除
        File folder = new File("my new folder/two");
        folder.delete();//返回值布爾類型
        //被刪除的文件夾必須為空才會刪除成功
        if(folder.delete()){
            System.out.println("done");
        }else{
            System.out.println("fail");
        }
    }
}

四、文件屬性的讀取

public class HelloFile {

    public static void main(String[] args) {
        //文件屬性的讀取
        File file = new File("text.txt");
        //判斷文件是否存在
        System.out.println("判斷文件是否存在"+file.exists());
        //讀取文件名稱
        System.out.println("讀取文件名稱"+file.getName());
        //讀取文件路徑
        System.out.println("讀取文件路徑"+file.getPath());
        //讀取文件絕對路徑
        System.out.println("讀取文件絕對路徑"+file.getAbsolutePath());
        //獲取文件父級路徑
        System.out.println("獲取文件父級路徑"+new File(file.getAbsolutePath()).getParent());
        //讀取文件大小
        System.out.println("讀取文件大小"+file.length()+"byte");//字節(jié)
        System.out.println("讀取文件大小"+(float)file.length()/1000+"KB");
        //判斷文件是否被隱藏
        System.out.println("判斷文件是否被隱藏"+file.isHidden());
        //判斷文件是否可讀
        System.out.println("判斷文件是否可讀"+file.canRead());
        //判斷文件是否可寫
        System.out.println("判斷文件是否可寫"+file.canWrite());
        //判斷文件是否為文件夾
        System.out.println("判斷文件是否為文件夾"+file.isDirectory());
    }

五、文件屬性的設(shè)置

public class HelloFile {
    public static void main(String[] args) {
        //文件屬性的設(shè)置
        File file = new File("text.txt");
        if (file.exists()){
            //將文件設(shè)定為可寫
            file.setWritable(true);
            file.setWritable(false);
            //將文件設(shè)定為可讀
            file.setReadable(false);
            file.setReadable(true);
            //將文件設(shè)定為只讀
            file.setReadOnly();

    }

六、遍歷文件夾

    //遍歷文件夾
    public static void printFiles(File dir){
        printFiles(new File("絕對路徑"));
        if (dir.isDirectory()) {
            File next[] = dir.listFiles();//listFiles()返回一個數(shù)組
            for(int i= 0;i<next.length;i++){
                System.out.println(next[i].getName());
                if(next[i].isDirectory()){
                    printFiles(next[i]);
                }
            }
        }
    }

七、文件的簡單讀寫

package file;
import java.io.File;
import java.io.IOException;
public class HelloFile {
    public static void main(String[] args) {
     File file = new File("test.txt");
    if(file.exists()){
        System.err.println("exist");
        try{
            FileInputStream fis = new FileInputStream(file);
            InputStreamReader isr = new InputStreamReader(fis,"UTF-8");
            BufferedReader br = new InputStreamReader(isr);
            String line;
            while(line = br.readLine() != NUll){
                System.out.println(line);
            }
            br.close();
            isr.close();
            fis.close();


        }catch (FileNotFoundException e) {
        }catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }catch (Exception e) {
        }


    }
    }

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • File類簡介 File 類用來代表文件或文件夾,通過 File 類,可以對文件與文件夾進行豐富的操作,并且可以獲...
    Yanci516閱讀 1,711評論 1 2
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,564評論 19 139
  • 1.創(chuàng)建文件夾 !/bin/sh mkdir -m 777 "%%1" 2.創(chuàng)建文件 !/bin/sh touch...
    BigJeffWang閱讀 10,491評論 3 53
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,242評論 2 33
  • 家鄉(xiāng)的一條小路。
    夢成閱讀 194評論 0 0

友情鏈接更多精彩內(nèi)容