outputstream write 예제

늘 그렇듯이 GitHub에서 예제에 대한 코드를 사용할 수 있습니다. 쓰기 호출과 동일한 효과가 있습니다(b, 0, b.lengh): 파일에 기본 값을 작성해야 하는 경우 FileOutputStream 클래스를 사용합니다. FileOutputStream 클래스를 통해 바이트 지향 및 문자 지향 데이터를 작성할 수 있습니다. 그러나 문자 지향 데이터의 경우 FileOutputStream보다 FileWriter를 사용하는 것이 좋습니다. 대용량 파일에 큰 바이트 시퀀스를 작성해야 하는 매우 I/O 집약적인 응용 프로그램을 개발할 때는 일부 버퍼링을 사용하는 것이 좋습니다. 버퍼링의 기본 개념은 내부 중간 버퍼를 사용하여 바이트를 추가한다는 것입니다. 즉, 시스템은 모든 단일 바이트에 대해 기본 OS의 “쓰기” 메서드를 호출할 필요가 없으며 대신 이 바이트 시퀀스에서 작동합니다. 이렇게 하면 비용이 많이 드는 I/O 작업의 양이 줄어들기 때문에 성능이 중요한 응용 프로그램에 큰 차이가 있습니다. 이름에서 알 수 있듯이 FileOutputStream은 파일에 데이터를 작성하는 OutputStream입니다. FileOutputStream은 다른 OutputStream과 마찬가지로 원시 바이트 스트림을 작성할 수 있습니다.

주의해야 할 중요한 점은 각 데이터 인수에 대해 write()를 호출할 때마다 버퍼에만 기록되며 파일에 대한 비용이 많이 드는 호출이 발생하지 않는다는 것입니다. 이 스트림의 의도된 대상이 기본 운영 체제(예: 파일)에서 제공하는 추상화인 경우 스트림을 플러시하면 이전에 스트림에 기록된 바이트만 쓰기 위해 운영 체제로 전달됩니다. 디스크 드라이브와 같은 물리적 장치에 실제로 기록되는 것을 보장하지는 않습니다. write() 메서드의 이 오버로드된 버전은 OutputStream에 바이트 배열의 하위 시퀀스를 작성할 수 있습니다. OutputStream은 주로 대상에 바이트 스트림을 작성하지만 그렇게하기 전에 데이터를 변환 할 수 있습니다. FilterOutputStream은 특정 데이터 변환을 수행하는 모든 클래스의 수퍼 클래스를 나타냅니다. 필터출력스트림은 항상 기존 OutputStream으로 구성됩니다. 이것은 자바.io.OutputStream 예제입니다. 이 예제의 소스 코드를 다운로드할 수 있습니다. 하위 클래스는 이 메서드를 재정의하고 보다 효율적인 구현을 제공하는 것이 좋습니다. ByteArrayOutputStream을 사용하여 메모리 바이트 배열의 원시 바이트를 작성할 수 있습니다. Java는 바이트 스트림을 문자 스트림에 연결하는 몇 가지 편리한 클래스도 제공합니다.