教學級示例:雙層循環生成九九乘法表字符串陣列,逐字節寫入文件(FileOutputStream.write(byte)),再逐字節讀取拼接輸出(FileInputStream.read())。代碼雖簡陋但清晰展示字節流基本用法。
String[] p = new String[9];
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
p[i-1] += j + "*" + i + "=" + (i*j) + " ";
}
p[i-1] += "\n";
}
FileOutputStream out = new FileOutputStream("Test804.out");
for (String line : p) {
for (char c : line.toCharArray()) {
out.write((byte) c);
}
}
FileInputStream in = new FileInputStream("Test804.out");
int len = in.available();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < len; i++) {
sb.append((char) in.read());
}
System.out.println(sb);
PrintWriter / BufferedWriter 直接寫字符串,避免手動轉字節。BufferedReader.readLine() 按行處理,或 Files.readAllBytes() (Java 7+) 一次性讀入。try-with-resources。本例適合初學者理解字節流與字符流轉換本質,實際開發請優先使用字符流或 NIO.2 API。