여러파일을 하나로 합친담에 특정파일만 골라낼때, 이 로직 괜찮을까요?

조회수 942회

여러파일을 하나로 합쳐서 보관하다가 나중에 필요할때 하나로합친 파일안에 특정파일을 다시 불러오고 싶습니다.

파일정보와 관련된 db따로 구성안하구요.

(이 파일들의 각 길이는 첨에 알수 없습니다. 실시간 chunk파일이라서..)

그래서 생각한게...

  1. 파일을 엽니다(wb+)
  2. 파일을 계속 append 시킵니다.
  3. 마지막에 파일들의 fseek지점과 길이를 serialize한 정보값을 append합니다.
  4. 최종적으로 serialize한 정보값 길이를 고정된 길이(int32,64)로 append합니다.

이렇게 보관한 파일을 불러올때...

  1. 파일 끝에서부터 고정된길이(32,64)을 읽고
  2. serialize길이를 가져와 파일끝에 달린 serialize정보를 unserialize합니다.
  3. unserialize된 정보를 바탕으로 특정파일을 순서와 상관없예 fseek으로 제공합니다.

이런 로직을 생각하고 있습니다.

이렇게 짜도 상관없을까요? 아니면 best practice가 따로 있을가요?

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)