?????作者名稱:DaenCode
??作者簡介:啥技術(shù)都喜歡搗鼓搗鼓,喜歡分享技術(shù)、經(jīng)驗、生活。
??人生感悟:嘗盡人生百味,方知世間冷暖。
??所屬專欄:JavaSE項目
??系統(tǒng)介紹
體驗地址:JavaSE基礎(chǔ)夯實之偽Linux文件系統(tǒng)
實現(xiàn)功能:
- 創(chuàng)建目錄
- 刪除目錄
- 切換目錄
- 獲取路徑下目錄及文件列表
- 創(chuàng)建文件
- 刪除文件
- 獲取當(dāng)前路徑
- 文件重命名
所需知識:
- File類常用API的用法
- 異常捕獲
- 條件控制
- 數(shù)組知識
- 循環(huán)知識
- IO流知識
- Linux中的cd、mkdir、rm、touch、ls、pwd等等簡單文件操作命令。
??部分功能運行
重命名文件
通過Linux命令的mv命令對當(dāng)前new.txt重命名為daen.txt。
創(chuàng)建文件
通過linux中的touch命令創(chuàng)建test.txt。
刪除文件
通過rm命令刪除test.txt文件。
??知識一覽
File類常用API
API | 描述 |
---|---|
File(String pathname) |
通過給定的路徑名字符串創(chuàng)建File對象。 |
File(File parent, String child) |
創(chuàng)建File對象,表示指定父目錄和指定子目錄下的文件或目錄。 |
exists() |
測試文件或目錄是否存在。 |
isDirectory() |
測試文件是否為目錄。 |
mkdir() |
創(chuàng)建此抽象路徑名指定的目錄。 |
createNewFile() |
當(dāng)指定抽象路徑名表示的文件不存在時,創(chuàng)建一個新的空文件。 |
delete() |
刪除此抽象路徑名表示的文件或目錄。 |
listFiles() |
返回目錄下的所有文件和子目錄的文件數(shù)組。 |
getAbsolutePath() |
返回此抽象路徑名的絕對路徑名字符串。 |
getCanonicalPath() |
返回此抽象路徑名的規(guī)范路徑名字符串。 |
getName() |
返回此抽象路徑名表示的文件或目錄的名稱。 |
getParent() |
返回此抽象路徑名父目錄的路徑名字符串;如果此路徑名沒有指定父目錄,則返回 null。 |
lastModified() |
返回文件或目錄最后一次被修改的時間,以毫秒表示。 |
length() |
返回此抽象路徑名表示的文件的長度(以字節(jié)為單位)。注意,如果此路徑名表示的文件是一個目錄,那么此方法返回值為0。 |
renameTo(File dest) |
將此抽象路徑名重命名為指定的路徑名。 |
isFile() |
測試此抽象路徑名表示的文件是否是一個標(biāo)準(zhǔn)文件。 |
Linux文件系統(tǒng)命令
命令 | 描述 | 用法 |
---|---|---|
ls | 列出目錄內(nèi)容 | ls [選項] [文件/目錄] |
cd | 切換目錄 | cd [目錄路徑] |
pwd | 顯示當(dāng)前工作目錄 | pwd |
mkdir | 創(chuàng)建新目錄 | mkdir [目錄名] |
rmdir | 刪除空目錄 | rmdir [目錄名] |
cp | 復(fù)制文件或目錄 | cp [選項] [源文件/目錄] [目標(biāo)文件/目錄] |
mv | 移動文件或目錄,或者重命名 | mv [選項] [源文件/目錄] [目標(biāo)文件/目錄] |
rm | 刪除文件或目錄 | rm [選項] [文件/目錄] |
touch | 創(chuàng)建空文件或更新文件時間戳 | touch [文件] |
cat | 查看文件內(nèi)容 | cat [文件] |
less | 逐頁查看文件內(nèi)容 | less [文件] |
head | 顯示文件開頭部分 | head [選項] [文件] |
tail | 顯示文件結(jié)尾部分 | tail [選項] [文件] |
ln | 創(chuàng)建鏈接 | ln [選項] [源文件] [鏈接文件] |
find | 在文件系統(tǒng)中搜索文件 | find [路徑] [選項] [表達式] |
grep | 在文件中搜索匹配的文本 | grep [選項] [模式] [文件] |
chmod | 修改文件或目錄的權(quán)限 | chmod [選項] [權(quán)限] [文件/目錄] |
chown | 修改文件或目錄的所有者 | chown [選項] [所有者] [文件/目錄] |
chgrp | 修改文件或目錄的所屬組 | chgrp [選項] [組] [文件/目錄] |
tar | 打包和解壓文件 | tar [選項] [文件/目錄] |
gzip | 壓縮文件 | gzip [選項] [文件] |
unzip | 解壓縮文件 | unzip [選項] [文件] |
數(shù)組用法
操作 | 描述 | 示例 |
---|---|---|
聲明數(shù)組 | 聲明一個數(shù)組變量 | int[] numbers; |
創(chuàng)建數(shù)組 | 使用 new 關(guān)鍵字創(chuàng)建實際的數(shù)組對象 |
numbers = new int[5]; |
初始化數(shù)組 | 在創(chuàng)建數(shù)組時直接初始化數(shù)組元素的值 | int[] numbers = {1, 2, 3, 4, 5}; |
訪問數(shù)組元素 | 使用索引訪問數(shù)組中的元素 | int thirdNumber = numbers[2]; |
修改數(shù)組元素 | 通過索引修改數(shù)組中的元素值 | numbers[3] = 10; |
獲取數(shù)組長度 | 使用 length 屬性獲取數(shù)組的長度 |
int length = numbers.length; |
遍歷數(shù)組 | 使用循環(huán)結(jié)構(gòu)遍歷數(shù)組中的所有元素 | for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); } |
IO流基礎(chǔ)
IO流類型 | 描述 | 示例 |
---|---|---|
字節(jié)流 | 操作字節(jié)數(shù)據(jù)的IO流類型 | - InputStream :用于從輸入源讀取字節(jié)數(shù)據(jù)- OutputStream :用于向輸出目標(biāo)寫入字節(jié)數(shù)據(jù)- FileInputStream :從文件讀取字節(jié)數(shù)據(jù)- FileOutputStream :向文件寫入字節(jié)數(shù)據(jù)- BufferedInputStream :對其他字節(jié)流提供緩沖功能 |
字符流 | 操作字符數(shù)據(jù)的IO流類型 | - Reader :用于從輸入源讀取字符數(shù)據(jù)- Writer :用于向輸出目標(biāo)寫入字符數(shù)據(jù)- FileReader :從文件讀取字符數(shù)據(jù)- FileWriter :向文件寫入字符數(shù)據(jù)- BufferedReader :對其他字符流提供緩沖功能- BufferedWriter :對其他字符流提供緩沖功能 |
緩沖流 | 提供緩沖功能,可以提高IO性能 | - BufferedInputStream :對其他字節(jié)流提供緩沖功能- BufferedOutputStream :對其他字節(jié)流提供緩沖功能- BufferedReader :對其他字符流提供緩沖功能- BufferedWriter :對其他字符流提供緩沖功能 |
對象流 | 序列化和反序列化Java對象的IO流類型 | - ObjectInputStream :讀取序列化對象- ObjectOutputStream :寫入序列化對象 |
轉(zhuǎn)換流 | 在字節(jié)流和字符流之間進行轉(zhuǎn)換 | - InputStreamReader :將字節(jié)流轉(zhuǎn)換為字符流- OutputStreamWriter :將字符流轉(zhuǎn)換為字節(jié)流 |
文件操作流 | 用于操作文件的IO流類型,如創(chuàng)建、刪除、重命名等操作 | - FileInputStream :從文件讀取字節(jié)數(shù)據(jù)- FileOutputStream :向文件寫入字節(jié)數(shù)據(jù)- FileReader :從文件讀取字符數(shù)據(jù)- FileWriter :向文件寫入字符數(shù)據(jù) |
??寫在最后
最后感謝大家的閱讀,對于小案例所需知識現(xiàn)在還沒有系統(tǒng)的給大家整理,大家可以去網(wǎng)上找找相關(guān)資料。此外,也很樂意大家基于此案例完善更多的功能。有想法的可以在評論區(qū)討論哦!文章來源:http://www.zghlxwxcb.cn/news/detail-668746.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-668746.html
到了這里,關(guān)于【InsCode】InsCode打造的JavaSE與Linux命令互融的偽Linux文件系統(tǒng)小項目的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!