1. 기존 io 와 같이 스트림 연결
예)
File f= new File("abc.txt");
FileInputStream fis = new FIleInputStream(f);
2. 스트림에서 채널 얻어 내기.
FileChannel fc = fis.getChannel();
3. 입 출력에 사용할 버퍼 생성 하기..
ByteBuffer bb = ByteBuffer.allocate(2048);
출력할 객체 만들기
FileOutputStream fos = new FileOutputStream(FileDescriptor.out) -> 콘솔 출력
FileChannel fc1 = fos.getChannel(); 채널얻어오고.
읽고 쓰기는 채널을 이용함.
fc.read(bb) // 읽고 쓸때 저장공간은 바이트버퍼를 이용함.
// 읽거나 쓸 준비를 버퍼에 알림
bb.flip();
fc1.write(bb)
// 버퍼 다 쓴 후, 클리어 시킴
bb.clear();
// 모든게 다 끈나면 클로즈!
fc.close();
fc1.close();
fis.close();
fos.close();
----
기존 IO 보다 속도가 빨라짐..(블록단위 송수신함 )
'JAVA > IO & NIO' 카테고리의 다른 글
MappedByteBuffer ! (0) | 2013.03.03 |
---|---|
NIO , Channel , Charset Packages ! (0) | 2013.03.03 |
PipedOutputStream & InputStream (0) | 2013.03.03 |
SequencInputStream , OutputStream (0) | 2013.03.03 |
ByteArrayOutputStream & InputStream (0) | 2013.03.03 |