Java 的輸入/輸出與串流
Alex Liu
Software Development Engineer
基本型別之間的轉換
擴大轉型:小型自動轉為大型
byte -> short -> char -> int -> long -> float -> double// 擴大轉型:自動發生
byte myByte = 8;
int myInt = myByte;
// 縮小轉型:需手動
double myDouble = 3.14;
int myInt = (int) myDouble; // 注意 (int)
int 轉為 char:char data = (char) 123;// 字元 'a' 的 Unicode 值
int data = 97;
// 直接以 `int` 格式列印資料
System.out.print(data);
// 將 `int` 轉為 `char` 後列印
System.out.print((char)data);
97
a
FileReader 類別以啟用讀檔功能import java.io.FileReader;
FileReader fr = new FileReader("example.txt");
int data = fr.read();
// 逐字元讀取並列印
while (data != -1) {
System.out.print((char) data);
data = fr.read();
}
fr.close(); // 關閉檔案以釋放資源
BufferedReader - import java.io.BufferedReader;// 建立 BufferedReader 物件
BufferedReader br = new BufferedReader(new FileReader("example.txt"));
String line;
// 使用 .readLine() 逐行讀取
while ((line = br.readLine())!= null){
System.out.println(line);
}
br.close();
FileWriter:FileWriterimport java.io.FileWriter;// 建立新的 `FileWriter` 物件 FileWriter fw = new FileWriter("example.txt"); // 使用 .write() 寫入檔案 fw.write("Overwriting the file."); fw.close()
FileWriterappend 模式可附加寫入,不覆寫原有內容$$
// 以附加模式初始化 `FileWriter`
FileWriter fw = new FileWriter("example.txt", true);
// 將資料附加到檔案
fw.write("Appending data.");
fw.close()
BufferedWriter - import java.io.BufferedWriter;// 建立 BufferedWriter 物件
BufferedWriter bw = new BufferedWriter(new FileWriter("example.txt"));
bw.write("Writing data");
// 使用 .newLine() 加入換行
bw.newLine();
bw.close();
Java 的輸入/輸出與串流