1.Stream流
a.定義:
Java.io 套件幾乎包含了所有操作輸入、輸出所需的類別。所有這些流類別代表了輸入來源和輸出目標。
Java.io 套件中的串流支援很多格式,例如:基本型別、物件、本地化字元集等等。
一個流可以理解為一個資料的序列。輸入流表示從一個來源讀取數據,輸出流表示向一個目標寫入資料。
Java 為 I/O 提供了強大的而靈活的支持,使其更廣泛地應用到文件傳輸和網路編程中。
b.控制台輸入:
Java 的控制台輸入由 System.in 完成。
為了獲得一個綁定到控制台的字元流,你可以把 System.in 包裝在一個 BufferedReader 物件中來建立一個字元流。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedReader 物件建立後,我們便可以使用 read() 方法從控制台讀取一個字符,或是用 readLine() 方法讀取一個字串。
下面展示如何讀取多字元輸入,這個程式碼會一直讀取控制台的字元輸入,直到使用者輸入q:
char c;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("輸入字元, 按 'q' 鍵退出。");
do {
c = (char) br.read();
# System.out.println(c);
# }
while (c != 'q');
# 如果想要讀取字串就用readLine()
# c.控制台輸出:
在先前已經介紹過,控制台的輸出由 print( ) 和 println() 完成。這些方法都由類別 PrintStream 定義,System.out 是該類別物件的一個參考。
PrintStream 繼承了 OutputStream類,並且實作了方法 write()。這樣,write() 也可以用來往控制台寫入操作。不過這種寫法不常用。
public static void main(String args[])
{
int b; b = 'A';
# System.out.write(b);
# System.out.write('\n');
}
2.File檔案讀寫:
根據上一章節,一個流被定義為一個資料序列。輸入流用於從來源讀取數據,輸出流用於向目標寫入數據。
這章兩個重要的流是 FileInputStream 和 FileOutputStream。
a.FileInputStream:
該流用於從檔案讀取數據,它的物件可以用關鍵字 new 來建立。
有多種建構方法可用於建立物件。
使用字串類型的檔案名稱可以建立一個輸入流物件來讀取檔案:
InputStream f = new FileInputStream("C:/java/hello");
# 也可以使用一個檔案物件來建立一個輸入流物件來讀取檔案。我們首先得使用 File() 方法來建立一個檔案物件:
File f = new File("C:/java/hello");
# InputStream out = new FileInputStream(f);
b.FileOutputStream:
該類別用來建立一個文件並向文件中寫入資料。
如果該流在開啟檔案進行輸出之前,目標檔案不存在,那麼該流會建立該檔案。
有兩個建構方法可以用來建立 FileOutputStream 物件。
使用字串類型的檔案名稱來建立一個輸出流物件:
OutputStream f = new FileOutputStream("C:/java/hello")
也可以使用一個檔案物件來建立一個輸出流來寫入檔案。我們必須先使用File()方法建立一個檔案物件:
File f = new File("C:/java/hello"); OutputStream f = new FileOutputStream(f);
# 具體的各種方法請見:https://www.runoob.com/java/java-files-io.html
# c.File Class(類別):
Java檔案類別以抽象的方式代表檔案名稱和目錄路徑名。該類別主要用於檔案和目錄的建立、檔案的查找和檔案的刪除等。
File物件代表磁碟中實際存在的檔案和目錄。透過以下建構方法建立一個File物件。
透過將給定路徑名字串轉換成抽象路徑名來建立一個新 File 實例:
File(String pathname);
# 根據 parent 路徑名字串和 child 路徑名稱字串建立一個新 File 實例:
File(String parent, String child);
透過將給定的 file: URI 轉換成一個抽象路徑名來建立一個新的 File 實例。
File(URI uri);
# d.Java FileReader類別:
# FileReader類別從InputStreamReader類別繼承而來。該類別按字元讀取流中資料。
//在給定從中讀取資料的 File 的情況下建立一個新 FileReader:
FileReader(File file);
# //在給定從中讀取資料的 FileDescriptor 的情況下建立一個新 FileReader。
FileReader(FileDescriptor fd);
//在給定從中讀取資料的檔案名稱的情況下建立一個新 FileReader。
FileReader(String fileName);
# e.Java FileWriter類別:
# FileWriter 類別從 OutputStreamWriter 類別繼承而來。該類別按字元向流中寫入資料。可以透過以下幾種建構方法來建立需要的物件
# 在給出 File 物件的情況下建構一個 FileWriter 物件:
# FileWriter(File file);
# 在給出 File 物件的情況下建構一個 FileWriter 物件。
FileWriter(File file, boolean append);
以上是Java流和檔案的基礎知識點有哪些?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

Dreamweaver Mac版
視覺化網頁開發工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

禪工作室 13.0.1
強大的PHP整合開發環境