国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

<JavaEE> 文件IO -- File類和文件操作

這篇具有很好參考價值的文章主要介紹了<JavaEE> 文件IO -- File類和文件操作。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一、文件的概念

二、文件系統(tǒng)

三、文件類型

四、使用 File 類進(jìn)行文件操作

4.1 File 類中的 pathSeparator 屬性

4.2?File 類構(gòu)造方法

4.3?File 類常用方法


一、文件的概念

什么是文件?

廣義上的“文件”是指抽象化的操作系統(tǒng)中的硬件設(shè)備和軟件資源,目的是對這些“文件”進(jìn)行同一的管理。

狹義上的“文件(FIle)”則只是指在硬件設(shè)備中保存的數(shù)據(jù),這些數(shù)據(jù)往往以一個一個的單位進(jìn)行保存,每一個獨立的單位就稱為“文件”。

二、文件系統(tǒng)

1)什么是文件系統(tǒng)?

是一個“樹形結(jié)構(gòu)”實現(xiàn)的系統(tǒng),用于組織管理文件。

操作系統(tǒng)通過“目錄”對文件進(jìn)行組織管理。利用目錄的層次結(jié)構(gòu)來描述文件所在位置,即“路徑”。
由于“樹形結(jié)構(gòu)”的特點,每個文件都會有自己的唯一路徑。通過路徑,就可以找到文件。
2)絕對路徑和相對路徑
絕對路徑

從“樹形結(jié)構(gòu)”的根節(jié)點開始描述,一直到葉子節(jié)點(即文件),這樣的描述方式稱為文件的“絕對路徑”(absolute path)。在windows系統(tǒng)中,絕對路徑從盤符開始描述。

相對路徑 從指定的任意節(jié)點出發(fā),該節(jié)點被稱為“基準(zhǔn)目錄”。以該節(jié)點為基準(zhǔn),對文件進(jìn)行描述,這樣的描述方式稱為“相對路徑”(relative path)。想要得到相對路徑,必須先明確基準(zhǔn)目錄。
3)相對路徑的兩個符號
. “ . ”號表示當(dāng)前目錄。
.. “ .. ”號表示當(dāng)前目錄的上一級目錄。
4)表示相對路徑的示例
基準(zhǔn)目錄:D:/Test/A/
相對路徑(當(dāng)前目錄下的test1.txt文件):./test1.txt
相對路徑(上級目錄下,B文件夾中的test2.txt文件):../B/test2/txt

三、文件類型

有哪些文件類型?
文本文件

文本文件是指保存合法字符的文件,字符以字符串形式保存。合法字符是指被字符集編碼的文本,如“UTF-8”等字符集。

二進(jìn)制文件 二進(jìn)制文件是指文件保存的是二進(jìn)制數(shù)據(jù)。

四、使用 File 類進(jìn)行文件操作

在 Java 中,文件的操作分為兩類
操作文件系統(tǒng)

通過 File 類,在系統(tǒng)中進(jìn)行增、刪、查等操作。(下文介紹該類)

操作文件內(nèi)容 通過 流對象,在文件中讀取或?qū)懭雰?nèi)容。

4.1 File 類中的 pathSeparator 屬性

pathSeparator 屬性是什么?
不同的操作系統(tǒng)使用“/”或“\”作為目錄分隔符,為使兩種情況都能被成功識別,F(xiàn)ile 中使用了?pathSeparator 屬性來對這兩個符號做自適應(yīng)。

4.2?File 類構(gòu)造方法

File 類中常用的構(gòu)造方法有以下三種

public File(File parent, String child)

根據(jù)父目錄和子路徑,創(chuàng)建新的 File 實例。

public File(String pathname)

根據(jù)文件路徑,創(chuàng)建新的 File 實例。路徑可以是絕對或相對路徑。

public File(String parent, String child)

根據(jù)父目錄和子路徑,創(chuàng)建新的 File 實例。

4.3?File 類常用方法

File 類中有以下常用的方法

public String getParent()

返回 File 對象的父目錄

public String getName()

返回 File 對象的文件名

public String getPath()

返回 File 對象的文件路徑

public String getAbsolutePath()

返回 File 對象的絕對路徑

public String getCanonicalPath()

返回 File 對象,修飾過的絕對路徑

public boolean exists()

判斷? File 對象是否真實存在

public boolean isDirectory()

判斷 File 對象是否為目錄

public boolean isFile()

判斷 File 對象是否為文件

public boolean createNewFile()

創(chuàng)建新的 File 對象

public boolean delete()

刪除 File 對象

public void deleteOnExit()

在進(jìn)程結(jié)束后,刪除?File 對象

public String[] list()

返回 File 對象目錄下的所有文件名

public File[] listFiles()

返回 File 對象目錄下的所有文件名

public boolean mkdirs()

創(chuàng)建 File?對象的目錄,包括中間目錄

public boolean renameTo(File dest)

修改文件名、文件路徑;修改文件路徑與剪切粘貼類似;

public boolean canRead()

判斷是否對文件有可讀權(quán)限

public boolean canWrite()

判斷是否對文件有可寫權(quán)限

代碼演示?getAbsolutePath() 和?getCanonicalPath() :

    //文件的基準(zhǔn)目錄是"C:/Test/A"。
    public static void main(String[] args) throws IOException {
        File file = new File("./test.txt");
        System.out.println("AbsolutePath-> "+file.getAbsolutePath());
        System.out.println("CanonicalPath-> "+file.getCanonicalPath());
    }

//運行結(jié)果:
AbsolutePath-> C:\Test\A\.\test.txt
CanonicalPath-> C:\Test\A\test.txt

可以看出AbsolutePath就是父目錄和相對路徑的字符串連接。
而CanonicalPath則是經(jīng)過了修飾處理的。

代碼演示?exists()、isDirectory()、isFile() 和 createNewFile() :

    public static void main(String[] args){
        File file = new File("C:/Test/A/test.txt");
        
        System.out.println("文件是否存在:" + file.exists());
        System.out.println("這是一個目錄:" + file.isDirectory());
        System.out.println("這是一個文件:" + file.isFile());

        System.out.println("創(chuàng)建新文件:" + file.createNewFile());
    }


//運行結(jié)果:
文件是否存在:false
這是一個目錄:false
這是一個文件:true
創(chuàng)建新文件:true

可以看出,使用 File 構(gòu)造方法時,傳入的文件路徑并不一定需要真實存在。
通過 exists() 可以判斷文件是否真實存在。
通過 createNewFile() 可以創(chuàng)建出一個新文件,文件的路徑與構(gòu)造方法的參數(shù)相同。

代碼演示?list() 和 listFiles() :

//目錄"C:/Test"中,存在文件夾"A"、文件夾"B"和文件"Test.txt"。

    public static void main(String[] args){
        File f = new File("D:/Learn/E-JavaEE");

        File[] files = f.listFiles();
        for (File file : files){
            System.out.println(file.getName());
        }
    }

//運行結(jié)果:
Test.txt
A
B

list() 和 listFiles() 用法相同,只是返回值不同。
list() 返回字符串?dāng)?shù)組。
listFiles() 返回文件數(shù)組。

代碼演示?renameTo() :

    public static void main6(String[] args) throws IOException {
        File src = new File("D:/Test/A/test.txt");
        File dest = new File("D:/Test/B/test1.txt");
        System.out.println("重命名:" + src.renameTo(dest)); 
    }

//運行結(jié)果:
重命名:true

可以看到,雖然方法名稱為“重命名”,但是重命的可以不只是名,還可以是目錄。
這就達(dá)成了剪切粘貼的效果。

閱讀指針 -> 《文件IO -- 流對象操作文件內(nèi)容》

<JavaEE> 文件IO -- 數(shù)據(jù)流和文件內(nèi)容操作(Reader 和 Writer 、InputStream 和 OutputStream)-CSDN博客文章瀏覽閱讀280次。介紹了數(shù)據(jù)流的概念和使用,著重介紹了字符流中的 Reader 類和 Writer 類、字節(jié)流中的 InputStream類和 OutputStream類https://blog.csdn.net/zzy734437202/article/details/134972142文章來源地址http://www.zghlxwxcb.cn/news/detail-759023.html

到了這里,關(guān)于<JavaEE> 文件IO -- File類和文件操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【JavaEE】文件操作和IO-目錄掃描全文檢索小程序

    【JavaEE】文件操作和IO-目錄掃描全文檢索小程序

    不知道說啥了,看看吧 在之前的學(xué)習(xí)中,基本上都是圍繞內(nèi)存展開的~ MySQL 主要是操作硬盤的 文件IO也是是操作硬盤的~ IO : i nput o utput 創(chuàng)造文件,刪除文件,重命名文件,創(chuàng)建目錄······ 一些操作沒有權(quán)限也做不了~ 1.1 路徑 就是我們的文件系統(tǒng)上的一個文件/ 目錄 的具

    2024年02月09日
    瀏覽(19)
  • 【JavaEE】文件操作: File 類的用法和 InputStream, OutputStream 的用法

    【JavaEE】文件操作: File 類的用法和 InputStream, OutputStream 的用法

    目錄 1. File 概述 1.1 File的屬性 1.2 File的構(gòu)造方法 1.3 File的方法 2.讀文件 2.1 InputStream 概述 2.2 FileInputStream 概述 2.3 正確打開和關(guān)閉文件的方式 2.4 不同方式讀取文件代碼示例 2.4 另一種方法:利用?Scanner 進(jìn)行字符讀取 3.寫文件 3.1 OutputStream 概述 3.2?利用 OutputStreamWriter 進(jìn)行字符寫

    2024年01月19日
    瀏覽(51)
  • 【Java EE】文件操作

    【Java EE】文件操作

    目錄 1.認(rèn)識文件 2.樹型結(jié)構(gòu)組織和目錄 3.文件路徑(Path) 4.其他知識 5.Java中操作文件 5.1File概述 5.1.1屬性 5.1.2構(gòu)造方法 5.1.3方法 5.2代碼示例 1.認(rèn)識文件 我們先來認(rèn)識狹義的文件(file)。針對1硬盤這種持久化存儲的I/O設(shè)備,當(dāng)我們想要進(jìn)行數(shù)據(jù)保存時,往往不是保存一個整

    2024年04月22日
    瀏覽(27)
  • <JavaEE> 文件IO -- 數(shù)據(jù)流和文件內(nèi)容操作(Reader 和 Writer 、InputStream 和 OutputStream)

    目錄 一、數(shù)據(jù)流概述 二、流的關(guān)閉 2.1 使用 close() 方法 2.2 使用 try-finally 2.3 使用?try-with-resources 三、字符流的讀寫 3.1 Reader 類 3.2 Writer 類 四、字節(jié)流的讀寫 4.1?InputStream?類 4.2?OutputStream?類 1)在 Java 中,文件的操作分為兩類 操作文件系統(tǒng) 通過 File 類,在系統(tǒng)中進(jìn)行增、刪

    2024年02月04日
    瀏覽(26)
  • 【Java EE 初階】文件操作

    【Java EE 初階】文件操作

    目錄 1.什么是文件? 1.在cmd中查看指定目錄的樹形結(jié)構(gòu)語法 2.文件路徑 從當(dāng)前目錄開始找到目標(biāo)程序(一個點) 返回到上一級目錄,再找目標(biāo)程序(兩個點) 2.Java中文件操作 1.File概述 1.屬性 2. 構(gòu)造方法 3.常用方法 ?代碼展示: 4.常用方法2 3.?文件內(nèi)容的讀寫---數(shù)據(jù)流 1.I

    2024年02月06日
    瀏覽(25)
  • 學(xué)習(xí)JavaEE的日子 Day33 File類,IO流

    學(xué)習(xí)JavaEE的日子 Day33 File類,IO流

    File是文件和目錄路徑名的抽象表示 File類的對象可以表示文件:C:UsersDesktophhy.txt File類的對象可以表示目錄路徑名:C:UsersDesktop File只關(guān)注文件本身的信息(文件名、是否可讀、是否可寫…),而不能操作文件里面的內(nèi)容 對文件里的數(shù)據(jù)進(jìn)行操作的是:IO流 需求1:通過程序

    2024年04月12日
    瀏覽(17)
  • 【JavaEE基礎(chǔ)學(xué)習(xí)打卡02】是時候了解Java EE了!

    【JavaEE基礎(chǔ)學(xué)習(xí)打卡02】是時候了解Java EE了!

    ?? 本系列教程適用于 Java Web 初學(xué)者、愛好者,小白白。我們的天賦并不高,可貴在努力,堅持不放棄。堅信量最終引發(fā)質(zhì)變,厚積薄發(fā)。 ?? 文中白話居多,盡量以小白視角呈現(xiàn),幫助大家快速入門。 ?? 我是 蝸牛老師 ,之前網(wǎng)名是 Ongoing蝸牛 ,人如其名,干啥都慢,所

    2024年02月12日
    瀏覽(22)
  • 【JavaEE基礎(chǔ)學(xué)習(xí)打卡03】Java EE 平臺有哪些內(nèi)容?

    【JavaEE基礎(chǔ)學(xué)習(xí)打卡03】Java EE 平臺有哪些內(nèi)容?

    ?? 本系列教程適用于Java Web初學(xué)者、愛好者,小白白。我們的天賦并不高,可貴在努力,堅持不放棄。堅信量最終引發(fā)質(zhì)變,厚積薄發(fā)。 ?? 文中白話居多,盡量以小白視角呈現(xiàn),幫助大家快速入門。 ?? 我是 蝸牛老師 ,之前網(wǎng)名是 Ongoing蝸牛 ,人如其名,干啥都慢,所以

    2024年02月12日
    瀏覽(20)
  • Java eight 解讀流(Stream)、文件(File)、IO和異常處理的使用方法

    Java eight 解讀流(Stream)、文件(File)、IO和異常處理的使用方法

    java.io 包幾乎包含了所有操作輸入、輸出需要的類。所有這些流類代表了輸入源和輸出目標(biāo)。 Java.io 包中的流支持很多種格式,比如:基本類型、對象、本地化字符集等等。 一個流可以理解為一個數(shù)據(jù)的序列。輸入流表示從一個源讀取數(shù)據(jù),輸出流表示向一個目標(biāo)寫數(shù)據(jù)。

    2024年02月11日
    瀏覽(26)
  • 【文件IO操作】Java代碼實現(xiàn),文件與IO,文件類型,文件代碼操作,文件操作案例

    【文件IO操作】Java代碼實現(xiàn),文件與IO,文件類型,文件代碼操作,文件操作案例

    前言: 大家好,我是 良辰丫 ,今天我將與大家一起學(xué)習(xí)文件操作的相關(guān)操作,跟隨我的步伐,一起往下看!?????? ??個人主頁:良辰針不戳 ??所屬專欄:javaEE初階 ??勵志語句:生活也許會讓我們遍體鱗傷,但最終這些傷口會成為我們一輩子的財富。 ??期待大家三連,關(guān)注,

    2023年04月18日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包