자바 IO 흐름의 버퍼 흐름 사용 상세히 설명

자바 버퍼 흐름 자체는 IO 기능을 가지지 않고 다른 흐름에 버퍼를 추가하여 효율을 높인다. 마치 다른 흐름을 위한 포장과 같다.파일이나 다른 대상에 대한 읽기와 쓰기가 빈번하거나 조작 효율이 낮으면 효과가 떨어진다.이때 버퍼 흐름을 사용하면 더욱 효율적으로 정보를 읽고 쓸 수 있다.버퍼 흐름은 먼저 데이터를 캐시한 다음에 함께 쓰거나 읽기 때문이다.따라서 버퍼링은 매우 중요하다. IO 작업을 할 때 버퍼링을 추가하여 성능을 향상시키는 것을 기억해야 한다.
버퍼 흐름은 바이트와 문자 버퍼로 나뉜다
바이트 버퍼링:
BufferedInputStream – 바이트 입력 버퍼
BufferedOutputStream – 바이트 출력 버퍼
문자 버퍼 흐름:
BufferedReader – 문자 입력 버퍼
BufferedWriter – 문자 출력 버퍼
다음은 주로 이 네 가지 완충류의 사용을 소개한다.
하나.바이트 버퍼
1. Buffered OutputStream – 바이트 출력 버퍼
Buffered Output Stream 클래스는 버퍼링 출력을 실현합니다. 이 출력 흐름을 설정하면 응용 프로그램은 모든 바이트를 베이스 출력 흐름에 쓸 수 있고 모든 바이트를 베이스 시스템으로 호출할 필요가 없습니다.
예제 코드:

public static void main(String[] args) { 
 try { 
 //  
 OutputStream out=new FileOutputStream("L:\\test.txt"); 
 //  
 BufferedOutputStream buf=new BufferedOutputStream(out); 
 String data=" , "; 
 buf.write(data.getBytes());//  
 buf.flush();// ,  
 //  
 buf.close();// ,  
 out.close(); 
} catch (IOException e) { 
 e.printStackTrace(); 
} 
 }
2. BufferedInputStream – 바이트 입력 버퍼 흐름
Buffered InputStream은 다른 입력 흐름에 버퍼 기능을 추가합니다. Buffered InputStream을 만들 때 데이터를 버퍼하고 성능을 향상시키는 내부 버퍼 그룹을 만듭니다.
예제 코드:

public static void main(String[] args) { 
 try { 
 //  
 InputStream in=new FileInputStream("L:\\test.txt"); 
 //  
 BufferedInputStream buf=new BufferedInputStream(in); 
 byte[]bytes=new byte[1024]; 
 //  
 int len=-1; 
 StringBuffer sb=new StringBuffer(); 
 while((len=buf.read(bytes))!=-1) 
 { 
 sb.append(new String(bytes,0,len)); 
 } 
 System.out.println(" :"+sb); 
 //  
 buf.close(); 
 in.close(); 

 } catch (IOException e) { 
 e.printStackTrace(); 
 } 
 } 
2.문자 버퍼 흐름
1. BufferedWriter – 문자 출력 버퍼
텍스트를 문자 출력 흐름에 쓰고 각 문자를 버퍼링하여 효율적인 쓰기를 제공합니다.버퍼 크기를 지정할 수 있습니다. 일반적인 경우 기본 버퍼 크기만으로도 충분합니다.
예제 코드:

public static void main(String[] args) { 
 try { 
 Writer w=new FileWriter("L:\\test.txt"); 
 //  
 BufferedWriter buf=new BufferedWriter(w); 
 //  
 buf.write(" "); 
 //  
 buf.flush(); 
 //  
 buf.close(); 
 w.close(); 
 } catch (IOException e) { 
 e.printStackTrace(); 
 } 
 } 
2. BufferedReader – 문자 입력 버퍼 흐름
문자 입력 흐름에서 정보를 읽고 각 문자를 버퍼링하여 효율적인 읽기를 실현한다.버퍼 크기를 지정할 수 있습니다. 일반적인 경우 기본 버퍼 크기만으로도 충분합니다.기본 크기는 8192입니다.
예제 코드:

public static void main(String[] args) { 
 try { 
 Reader r=new FileReader("L:\\test.txt"); 
 //  
 BufferedReader buf=new BufferedReader(r); 
 char [] data=new char[512]; 
 //  
 int len=-1; 
 StringBuilder sb=new StringBuilder(); 
 while((len=buf.read(data))!=-1) 
 { 
 sb.append(new String(data,0,len)); 
 } 
 System.out.println(" : "+sb); 
 //  
 buf.close(); 
 r.close(); 
 } catch (IOException e) { 
 e.printStackTrace(); 
 } 
 } 

이상은 본문의 전체 내용입니다. 본고의 내용이 여러분의 학습이나 업무에 일정한 도움을 줄 수 있는 동시에 저희를 많이 지지해 주시기 바랍니다!

좋은 웹페이지 즐겨찾기