東營(yíng)做網(wǎng)站優(yōu)化價(jià)格百度seo排名推廣
目錄
一、IO是什么?
二、存儲(chǔ)
?三、硬盤(pán)
?四、文件系統(tǒng)
4.1 文件目錄和組織方式
4.2 文化路徑
?4.3 文件類(lèi)型
?4.4 文件系統(tǒng)操作
一、IO是什么?
IO是英文Input/Output的縮寫(xiě),指輸入/輸出。在計(jì)算機(jī)科學(xué)中,IO通常指計(jì)算機(jī)與外部設(shè)備或網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸?shù)倪^(guò)程,包括讀取和寫(xiě)入文件,輸入和輸出數(shù)據(jù)等。
二、存儲(chǔ)
我們平常意義的存儲(chǔ)可能是存儲(chǔ)數(shù)據(jù)的硬盤(pán),在計(jì)算機(jī)中,用于數(shù)據(jù)直接處理的是內(nèi)存,存儲(chǔ)數(shù)據(jù)的是硬盤(pán),內(nèi)存相較于硬盤(pán)來(lái)說(shuō)速度是快成百上千倍的? ,?內(nèi)存是個(gè)不可持久化的,對(duì)于內(nèi)存來(lái)說(shuō),斷電后內(nèi)存中的數(shù)據(jù)就會(huì)清空? ?外存也就是硬盤(pán),是持久化的數(shù)據(jù),斷電后外存的數(shù)據(jù)不會(huì)丟失
?三、硬盤(pán)
?硬盤(pán)是一種用于存儲(chǔ)數(shù)據(jù)的計(jì)算機(jī)存儲(chǔ)設(shè)備,也被稱(chēng)為硬盤(pán)驅(qū)動(dòng)器或硬盤(pán)。它由一個(gè)或多個(gè)旋轉(zhuǎn)的磁盤(pán)組成,每個(gè)磁盤(pán)都有一個(gè)磁性表面,可以讀寫(xiě)數(shù)據(jù)。硬盤(pán)通常安裝在計(jì)算機(jī)的內(nèi)部,也可以用作外置設(shè)備。硬盤(pán)是計(jì)算機(jī)中最基本的存儲(chǔ)設(shè)備之一,用于存儲(chǔ)操作系統(tǒng)、應(yīng)用軟件、文件和其他數(shù)據(jù)。
?四、文件系統(tǒng)
4.1 文件目錄和組織方式
樹(shù)形組織,是按一定的層級(jí)結(jié)構(gòu)來(lái)組織的,也就是數(shù)據(jù)結(jié)構(gòu)中的樹(shù),windows中的樹(shù)是一個(gè)N叉樹(shù),所以就有了文件夾,目錄這樣的概念
4.2 文化路徑
1.絕對(duì)路徑 -->?Windows是從此電腦這個(gè)樹(shù)根開(kāi)始進(jìn)行分層級(jí),所以絕對(duì)路徑就是從此處開(kāi)始的,如下圖:這個(gè)路徑就是一個(gè)絕對(duì)路徑,從根目錄開(kāi)始找,一直找到目標(biāo)文件所在的位置(每經(jīng)過(guò)一個(gè)目錄就用“\”來(lái)分割),所經(jīng)歷的目錄就是絕對(duì)路徑。
2.相對(duì)路徑 --> 除了絕對(duì)路徑,我們還可以從任務(wù)節(jié)點(diǎn)(目錄)出發(fā),找到某一個(gè)文件(也是找到文件位置所經(jīng)歷的節(jié)點(diǎn)),此時(shí)所對(duì)應(yīng)的就是相對(duì)路徑。(從給定的某個(gè)目錄出發(fā)(也叫基準(zhǔn)目錄/工作目錄)所經(jīng)歷的路徑)如下圖:從Program Files目錄開(kāi)始,找到wab.exe,此時(shí)的Program Files就是基準(zhǔn)目錄(工作目錄),Program Files\Windows Mail就是相對(duì)路徑的表示。
在相對(duì)路徑中涉及到兩個(gè)特殊的符號(hào):? " . " 和 " .. " ,一個(gè)點(diǎn)就代表的是當(dāng)前目錄,兩個(gè)點(diǎn)就是代表當(dāng)前目錄的上一級(jí)目錄。
?4.3 文件類(lèi)型
根據(jù)存儲(chǔ)的數(shù)據(jù),我們可以劃分文件為文本文件和二進(jìn)制文件,分別代指保存被字符集編碼的文本和按照標(biāo)準(zhǔn)格式保存的非被字符集編碼的文件
常見(jiàn)的文本文件:txt,.java / .c,都是文本文件,? ? .class,.exe,jpg,mp3都是二進(jìn)制文件。
我們可以使用記事本來(lái)簡(jiǎn)單區(qū)分二進(jìn)制文件和文本文件~
當(dāng)我們用記事本打開(kāi)下面這個(gè)圖片
?
?可以發(fā)現(xiàn)打開(kāi)的文件內(nèi)容根本就看不懂,這種就是二進(jìn)制文件,他使用原本的編碼方式來(lái)翻譯,但是并不是對(duì)應(yīng)的,沒(méi)有對(duì)應(yīng)的無(wú)法翻譯,所以顯示出來(lái)就是亂碼~
打開(kāi)txt為后綴的文件,我們可以看到右下角記事本顯示的是UTF-8 的編碼方式,這種就是我們的文本文件
?
?4.4 文件系統(tǒng)操作
Java標(biāo)準(zhǔn)庫(kù)中提供了File這個(gè)類(lèi),就是用來(lái)操作系統(tǒng)的文件的(例如Java代碼操作創(chuàng)建文件刪除文件),這個(gè)類(lèi)對(duì)象就像是硬盤(pán)上的文件的一個(gè)抽象表示,在Java中直接操作硬盤(pán)上的文件不是很方便,就創(chuàng)建出這樣的一個(gè)對(duì)象,操作這個(gè)對(duì)象就可以簡(jiǎn)介的影響硬盤(pán)上的文件.
構(gòu)造File對(duì)象和一些File類(lèi)的一些方法:構(gòu)造對(duì)象的過(guò)程中可以使用絕對(duì)路徑也可以是相對(duì)路徑進(jìn)行初始化,這個(gè)路徑指向的文件可以存在也可以不存在。如下代碼:? ? (File類(lèi)中提供了很多的方法)
import java.io.File;
import java.io.IOException;public class IoDemo1 {public static void main(String[] args) throws IOException {File file = new File("D:/手機(jī)照片備份/myphone_72089A8996EA/知乎");System.out.println(file.getParent()); //上一級(jí)路徑System.out.println(file.getName()); //文件名字System.out.println(file.getPath()); // 相對(duì)路徑System.out.println(file.getAbsolutePath()); //絕對(duì)路徑System.out.println(file.getCanonicalPath()); //修飾過(guò)的絕對(duì)路徑}
}
?我們還可以操作創(chuàng)建一個(gè)文件 代碼如下:
import java.io.File;
import java.io.IOException;public class IODemo2 {public static void main(String[] args) throws IOException {File file = new File("D:/手機(jī)照片備份/myphone_72089A8996EA/知.txt");System.out.println(file.exists()); //判斷是否存在System.out.println(file.isDirectory()); //判斷是否是目錄System.out.println(file.isFile()); //判斷是否是普通文件file.createNewFile(); //在上述位置創(chuàng)建這個(gè)文件System.out.println(file.exists()); //判斷是否存在System.out.println(file.isDirectory()); //判斷是否是目錄System.out.println(file.isFile()); //判斷是否是普通文件file.delete();System.out.println("執(zhí)行刪除之后");System.out.println(file.isFile());}
}
結(jié)果如下:?
?
???可以查看 文件類(lèi)型,看文件是否存在,文件是否為目錄,刪除文件等等(File類(lèi)中有很多操作文件內(nèi)容的方法
?