스트림 사용 예제

FileInputStream, FileOutputStream

FileInputStream fi = new FileInputStream(new File("d:\\temp\\temp.xls"));
FileOutputStream fo = new FileOutputStream("d:\\temp\\temp2.xls");
 
int b;
while ((b = fi.read()) != -1) {
 fo.write(b);
 fo.flush();
}
  
fi.close();
fo.close();

RandomAccessFile

public static void main(String[] args) throws IOException {
  String s = "ILoveJava~";
  String q = "Jabook!";

  RandomAccessFile rf = new RandomAccessFile("RandomAccessFile.txt", "rw");
  rf.writeChars(s);
  rf.close();
  
  rf = new RandomAccessFile("RandomAccessFile.txt", "rw");
  rf.seek(10);
  rf.writeChars(q);
  rf.close();
  
  rf = new RandomAccessFile("RandomAccessFile.txt", "r");
  System.out.println("글 내용은" + rf.readLine());
  rf.close();
 }

스트림

스트림의 정의
   장치로부터 데이터를 얻거나 보낼 때 사용되는 중간 매개체 역활을 하는 놈


입력 스트림 비교


입력 스트림은 데이터를 먼저 스트림으로 읽어들입니다. 그리고 스트림에 존재하는 데이터를 하나씩 읽어들일 수 있습니다.


출력 스트림 비교


출력 스트림으로 데이터를 보냅니다. 그리고 출력 스트림에 보낸 데이터를 비워 버립니다. 그렇게 되면 출력 스트림에 존재하던 데이터가 모두 목표지점에 저장됩니다.


스트림의 종류



  • 문자스트림 : Reader나 Writer가 붙는다. 2바이트씩 처리(유니코드)

  • 바이트스트림 : InputStream과 OutputStream이 붙는다. 1바이트씩 처리, 데이터를 바이트 단위로 주고 받는다.