1. 이 헤더값의 사이즈가 18이라면, 바이트 배열에 파일을 스트림할 때 가장 먼제 들어오는 바이트 18개가 헤더값을 포함하고 있는 건가요? 아니면 랜덤하게 받아오나요?
=> HttpUrlConnetion 경우 InputStream 형식으로 read하니 순서대로 read 되서 맨 18byte에 헤더 값이 포함 될 겁니다.
특히 받은 동영상이 mp4 이라면 헤더 사이즈 4 바이트(이 경우 18 byte), 박스 타입(보통 ftyp box) 4 바이트, 박스 데이터.. 로 해서 18 byte가 순서대로 read 가 될 겁니다.
(단 파서에서 HttpUrlConnetion 의 InputStream 를 다이렉트로 받아 read 할 경우 mp4 기준
헤더 사이즈 4 바이트(이 경우 18 byte), 박스 타입 4 바이트 를 읽고 뒤의 값을 확인 안하고 skip 해서, 다음 box 헤더를 읽을 수도 있습니다.)
2. RandomAccessFile 객체를 사용해서 파일을 생성할 때라면 바이트 배열이 랜덤하게 들어오나요?
=> RandomAccessFile 클래스는 seek을 지원하는 클래스일 분, 데이터는 순서대로 읽습니다.
RandomAccessFile.seek이 호출 되면, 호출 된 위치 부터 읽을테구요.