Java에서 파일을 바이트 그룹으로 바꾸기 지식 요약 및 실례 상세 정보

Java에서 파일을 바이트 그룹으로 변환
키워드: 파일, 파일 흐름, 바이트 흐름, 바이트 그룹, 바이너리
요약: 최근 작업에서 직면한 수요는 http를 이용하여 2진 데이터를 서버에 대응하는 인터페이스로 전송하고userId,file(암호화 후) 등 일련의 혼합된 2진 데이터를 전송해야 한다는 것이다.본고는 자바를 사용하여 파일을 바이트 그룹으로 바꾸는 데 대한 자신의 지식 이해와 요약을 기록하는 데 목적을 둔다.
FileInputStream
FileInputStream을 사용하여 파일 읽기
File InputStream은 파일에서 정보를 읽거나 구조자가 파일 형식을 수신하거나 파일 경로를 나타내는 String 형식을 나타내는 InputStream의 하위 클래스입니다.

File file = new File("filePath");
FileInputStream fis = new FileInputStream(file);
ByteArrayOutputStream
ByteArray OutputStream을 사용하여 File InputStream의 파일 데이터를 읽습니다.
ByteArray OutputStream은 메모리에 버퍼를 만드는 데 사용되며,'흐름'으로 보내는 모든 데이터는 이 버퍼에 설치됩니다.

ByteArrayOutputStream bos = new ByteArrayOutputStream(fis);
byte[] b = new byte[1024];
int len = -1;
while((len = fis.read(b)) != -1) {
  bos.write(b, 0, len);
}
참고: ByteArray OutputStream의 write 방법은 세 가지 재부팅 형식이 있습니다.
write(int b)
지정된 바이트 쓰기
write(byte[] b)
전체 바이트 그룹 쓰기 b
write(byte[] b, int off, int len)
바이트 그룹 b를 작성하고, b의 오프셋 아래에서 시작하여len 바이트를 기록합니다.
여기에는 두 번째 중 하나를 사용하지 않고 세 번째 종류를 사용합니다. 코드에서 매번 읽는 버퍼 b의 수량을 가져옵니다. 보통 1024(b를 정의할 때 지정한 길이를 표시하기 때문)입니다. 마지막까지 읽을 때만 1024바이트가 부족할 수도 있고 실제 읽는 바이트 수를 읽을 수도 있습니다. 그러나 버퍼를 쓸 때 쓰는 수량을 지정하지 않으면 len을 지정하지 않습니다. 그러면 전체 b를 모두 씁니다.b 중 일부만 쓰여도 1024바이트는 쓰여집니다.이로 인해 toByteArray를 사용할 때 바이트 그룹이 실제 길이가 아닙니다!
이렇게 하면 파일이 InputStream에서 ByteArray OutputStream에 기록됩니다.
ByteArray OutputStream의 toByteArray () 방법으로 파일의 바이트 그룹을 얻을 수 있습니다.

byte[] fileByte = bos.toByteArray();
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!

좋은 웹페이지 즐겨찾기