Character Streams − จัดการข้อมูลในรูป 16-bit Unicode ใช้สำหรับอ่านและเขียนข้อมูลข้อความ (text data) เท่านั้น
คลาส Reader และ Writer (abstract) เป็นซูเปอร์คลาสของทุกคลาส character stream: คลาสที่ใช้สำหรับอ่าน/เขียน character streams ต่อไปนี้คือคลาส character array stream ที่ Java มอบให้ −
| Reader | Writer |
|---|---|
| BufferedReader | BufferedWriter |
| CharacterArrayReader | CharacterArrayWriter |
| StringReader | StringWriter |
| FileReader | FileWriter |
| InputStreamReader | InputStreamWriter |
| FileReader | FileWriter |
ตัวอย่าง
โปรแกรม Java ต่อไปนี้อ่านข้อมูลจากไฟล์เฉพาะโดยใช้ FileReader และเขียนไปอีกไฟล์หนึ่งโดยใช้ FileWriter
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class IOStreamsExample {
public static void main(String args[]) throws IOException {
// สร้าง FileReader object
File file = new File("D:/myFile.txt");
FileReader reader = new FileReader(file);
char chars[] = new char[(int) file.length()];
// อ่านข้อมูลจากไฟล์
reader.read(chars);
// เขียนข้อมูลไปอีกไฟล์
File out = new File("D:/CopyOfmyFile.txt");
FileWriter writer = new FileWriter(out);
// เขียนข้อมูลลงไฟล์
writer.write(chars);
writer.flush();
System.out.println("Data successfully written in the specified file");
}
}
ผลลัพธ์
Data successfully written in the specified file