91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java基礎知識之I/O流和File類文件操作方法

發布時間:2022-04-29 18:29:24 來源:億速云 閱讀:221 作者:iii 欄目:開發技術

今天小編給大家分享一下Java基礎知識之I/O流和File類文件操作方法的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

    ?I/O流原理及流的分類

    I/O原理

    • I/O是Input和Output的縮寫,I/O技術是非常實用的技術,用于處理數據傳輸(如:讀/寫文件,網絡通信)

    • Java程序中,對于數據的輸入/輸出操作是以流(stream)的方式進行的

    • java.io包下提供了各種流(stream)類和接口,用以獲取不同種類的數據,并通過方法輸入和輸出數據。

    • 文件流:文件在程序中是以流的形式操作的

    Java基礎知識之I/O流和File類文件操作方法

    輸入流:數據從數據源(文件)到程序(內存)的路徑

    輸出流:數據從程序(內存)到數據源(文件)的路徑

    I/O流的分類

    • 按操作數據單位分為:字節流(二進制文件)、字符流(文本文件)

    • 按數據的流向分為:輸入流、輸出流

    • 按流的角色分為:節點流、處理流

    抽象基類字節流字符流
    輸入流InputStreamReader
    輸出流OutputStreamWriter

    ??I/O的體系結構

    Java基礎知識之I/O流和File類文件操作方法

    文件(File)

    概念

    什么是文件?

    文件,對于我們并陌生,文件就是保存數據的地方,比如word文檔、txt文本、excel文件、圖片、視頻…等都是文件,操作系統中以文件為單位管理磁盤中的數據。從數據存儲角度來說,所有文件本質上都是一樣的,都是由一個個字節組成的歸根到底都是0-1比特串。

    文件夾(目錄)

    多個文件如果不分類放在一起,用戶使用起來就非常不方便,因此,又引入了樹形目錄(也叫文件夾)的機制,可以把文件放在不同的文件夾中,文件夾中還可以嵌套文件夾,這就便于用戶對文件進行管理和使用。

    ??常用操作(File類)

    創建文件對象相關構造器和方法

    new File(String pathname);//根據路徑構建一個File對象
    new File(File parent,String child);//根據父目錄文件+子路徑構建
    new File(String parent,String child);//根據父目錄路徑+子路徑構建
    createNewFile();//創建新文件

    在E盤下,用以上方式創建文件test01.txt\test02.txt\test03.txt

    import java.io.File;
    import java.io.IOException;
    
    public class FileCreate {
        public static void main(String[] args) throws IOException {
            //方式1
            String pathname = "e:\\test01.txt";
            File file1 = new File(pathname);
            file1.createNewFile();
            //方式2
            File parentfile = new File("e:\\");
            String child2 = "test02.txt";
            File file2 = new File(parentfile, child2);
            file2.createNewFile();
            //方式3
            String parent = "e:\\";
            String child3 = "test03.txt";
            File file3 = new File(parent, child3);
            file3.createNewFile();
        }
    }

    Java基礎知識之I/O流和File類文件操作方法

    獲取文件的相關信息

    get.getName();//獲取文件名字

    canRead();//文件是否可讀

    canWrite();//文件是否可寫

    getAbsoultePath();//獲取文件的絕對路徑

    getPath();//相對路徑

    getParent();//獲取文件父級目錄

    lenth();//文件大小(字節)

    exists();//判斷文件是否存在

    isFile();//判斷是不是一個文件

    isDirectory();//判斷是不是一個目錄

    import java.io.File;
    public class FileInfomation {
        public static void main(String[] args) {
            //創建文件對象
            File file = new File("e:\\test01.txt");
            System.out.println("文件名字:" + file.getName());
            System.out.println("文件是否可讀:" + file.canRead());
            System.out.println("文件是否可寫:" + file.canWrite());
            System.out.println("文件絕對路徑:" + file.getAbsolutePath());
            System.out.println("文件大小(字節):" + file.length());
            System.out.println("文件是否存在:" + file.exists());
            System.out.println("是不是一個文件:" + file.isFile());
            System.out.println("是不是一個目錄:" + file.isDirectory());
        }
    }

    Java基礎知識之I/O流和File類文件操作方法

    文件比較

    File f1=new File("D:\\test1.txt");
    File f2=new File("D:\\test2.txt");
    f1==f2;//比較的是兩個對象的地址
    f1.equals(f2);//比較兩個對象對應的文件的路徑

    目錄操作和文件刪除

    mkdir();//創建單層目錄

    mkdirs();//創建多層目錄

    delete();//刪除目錄(這層目錄必須為空,沒有內容)

    查看文件目錄

    list();//返回一個字符串數組,命名由此抽象路徑名表示的目錄中的文件和目錄。

    listFiles();//返回一個抽象路徑名數組,表示由該抽象路徑名表示的目錄中的文件。

    案列:遍歷一個目錄下的所有文件打印輸出

    public class PrintFile {
        public static void main(String[] args) {
            //創建文件對象
            File file = new File("e:\\Test");
            String[] list = file.list();//文件夾下目錄/文件對應的名字的數組
            for (String s : list) {
                System.out.println(s);
            }
            File[] files = file.listFiles();
            for (File f : files) {
                System.out.println(f.getName() + "," + f.getAbsolutePath());
            }
        }
    }

    Java基礎知識之I/O流和File類文件操作方法

    遍歷目錄

    1.給定一個文件對象file
    2.listFiles()獲取該文件下的所有文件對象數組
    3.遍歷File對象數組,如果是目錄,遞歸調用該方法獲取該目錄下的所有文件對象;如果是文件,打印輸出路徑+姓名

    import java.io.File;
    
    public class PrintFile {
        public static void main(String[] args) {
            File file = new File("E:\\Code");
            getAllFile(file);
        }
    
        public static void getAllFile(File file) {
            //獲取給定目錄下的所有File對象數組
            File[] files = file.listFiles();
            //開始遍歷
            if (files != null) {
                for (File f : files) {
                    if (f.isDirectory()) {//判斷是否為目錄,如果是,調用遞歸
                        getAllFile(f);
                    } else {//不是,就打印路徑+文件名
                        System.out.println(f.getAbsoluteFile() + "下的:" + f.getName());
                    }
                }
            }
        }
    }

    以上就是“Java基礎知識之I/O流和File類文件操作方法”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    颍上县| 南郑县| 尤溪县| 广州市| 玉溪市| 肇东市| 龙泉市| 福州市| 湾仔区| 长宁县| 利津县| 太仆寺旗| 贵定县| 白城市| 陕西省| 沂水县| 油尖旺区| 广宁县| 景谷| 宣武区| 富锦市| 康定县| 吉木乃县| 涟源市| 清原| 出国| 巴彦淖尔市| 政和县| 武山县| 鄢陵县| 尼玛县| 夏河县| 南城县| 泰顺县| 淮南市| 桐梓县| 江津市| 宁武县| 南木林县| 当涂县| 旺苍县|