java.io
輸入流 | 輸出流 | |
---|---|---|
字節流 | 字節輸入流 InputStream |
字節輸出流 OutputStream |
字符流 | 字符輸入流 Reader |
字符輸出流 Writer |
File類方法說明 Java8 官方API文檔 File 一個File物件代表一個檔案或一個資料夾
Windows的路徑分隔符(\)和Linux的路徑分隔符(/)不一樣,若是跨平台系統需要使用File.separator
代替分隔符。
获得父目录
建立資料夾
在電腦中都是以字節的型式保存。
Java8 官方API文檔 FileOutputStream
構造方法
數據寫出原理 Java程序–>JVM–>OS–>OS調用寫數據的方法–>數據寫入文件中
使用步驟
換行:windows(\r\n)、Linux(/n)、Mac(\r)
構造方法
使用步驟
字節流讀取文本時,讀取中文可能有問題,因為一個中文字符可能占用多個字節,所以字符流用於讀取字符。
Java8 官方API文檔 FileWriter 用起來和FileOutputStream類及,只是將byte改為char
Java8 官方API文檔 FileReader 作用:將硬盤文件中的數據以字符的方式讀取至內存中
缺點:比較麻煩
try()中定義流對象,此對象只在try中有效,並且不用寫finally會自動釋放對象。
try()中放入先前定義的流對象,執行try完成後自動釋放對象。
可以藉由System新增的console()方法取得標 準輸入輸出裝置的Console物件,並利用它來執行一些簡單的主控台文字輸入輸出 Console類方法說明
唯一與IO流相結合的集合。表示一個持久的屬性集,Properties可保存在流中或從流中加載,屬性列表中每個鍵及值都是字符串。 Java8 官方API文檔 Properties
文件中鍵值對連接符號可用=或(空格)…其他符號
創建內置緩沖區數據,減少系統IO次數;對4個基本的FileXxx
流提高效率,因此也分為4個流。
Java8 官方API文檔 BufferedOutputStream
Java8 官方API文檔 BufferedInputStream 使用方法和BufferedOutputStream類似,相關方法可參考FileInputStream或API文檔。
Java8 官方API文檔 BufferedReader 使用方法和BufferedOutputStream類似,相關方法可參考FileReader或API文檔。
Java8 官方API文檔 BufferedWriter 使用方法和BufferedOutputStream類似,相關方法可參考FileWriter或API文檔。
作用:解決亂碼問題 字符編碼:一最自然語言的字符與二進制數間的對應規則。 編碼表(字符集):支持所有字符的集合,包括各國文字、符號、數字…等。
Java8 官方API文檔 OutputStreamWriter
Java8 官方API文檔 InputStreamReader
Java8 官方API文檔 Serializable 序列化:將對象寫入文件保存 反序列化:從文件讀取對象
Java8 官方API文檔 ObjectOutputStream
構造方法
使用步驟
Java8 官方API文檔 ObjectInputStream
打印流只負責數據輸出,不負責數據的讀取。 Java8 官方API文檔 PrintStream
System.setOut(PrintStream out)
改變輸出語句目的地改為參數中傳遞的打印流目的地
Code | Description |
---|---|
%s | Formats the argument as a string, usually by calling the toString method on the object. |
%d %o |
Formats an integer, as a decimal, octal, or hexadecimal value. |
%f %g |
Formats a floating point number. The %g code uses scientific notation. |
%n | Inserts a newline character to the string or stream. |
%% | Inserts the % character to the string or stream. |
%b | Formats a boolean value. |