ZIP 아카이브의 파일 순서를 어떻게 제어할 수 있나요?

ZIP 아카이브의 파일 순서를 어떻게 제어할 수 있나요?

ZIP 아카이브의 파일을 특정 순서로 유지해야 하는 경우가 있습니다(예: 현재 ZIP 아카이브를 만들고 있습니다).EPUB, ZIP의 첫 번째 항목이 mimetype파일이어야 함). Windows에서 이 작업을 어떻게 수행할 수 있나요?

나는 현재 사용하고 있습니다7-Zip아카이버로 설정했지만 파일 순서를 제어하는 ​​옵션이 표시되지 않습니다. 7-zip으로 할 수 있나요? 그렇지 않은 경우 어떤 옵션이 있습니까?

답변1

7-zip GUI 버전:

  1. mimetypeEPUB 파일에서 추출
  2. mimetypeEPUB 파일에서 삭제
  3. mimetype이름 을 바꾸다!mimetype
  4. !mimetypeEPUB 파일에 추가
  5. EPUB 파일 내부 !mimetype로 이름 바꾸기mimetype

7-zip 간단한 드래그 앤 드롭 버전:

이동7-zip 다운로드 페이지및 다운로드합니다 7-Zip Extra: standalone console version, 7z DLL, Plugin for Far Manager(안정적인 9.20에서는 작동하지 않지만 9.38 베타 및 15.06 베타에서는 잘 작동합니다). 발췌 7za.exe. 아래 코드를 repair.bat파일로 저장합니다.

7za x %1 mimetype -y
7za d %1 mimetype
move /y mimetype !mimetype
7za a %1 !mimetype
del /f !mimetype
7za rn %1 !mimetype mimetype

7za.exerepair.bat같은 디렉토리에 넣고 EPUB 파일을 repair.bat.

답변2

한 가지 방법은 다음과 같습니다. 대부분의 아카이버 및 아카이브 도구에는 원본 아카이브에 추가 파일 항목을 추가하거나 추가하는 기능이 있습니다. 상단에 원하는 항목으로 아카이브를 생성한 다음 생성된 아카이브에 추가 파일 항목을 추가합니다. 나는 이것이 Windows 자체 ZIP 도구에서 작동한다는 것을 알고 있습니다.

실제 대답은 저 너머에 있는 것 같습니다. C#의 경우 여기입니다. https://stackoverflow.com/questions/5898787/creating-an-epub-file-with-a-zip-library

HTML의 경우 여기(7z 사용)
http://next.blurb.com/2011/02/17/how-to-make-an-ipad-photo-book/

특히 이 부분

2.샘플 포토북 폴더를 열고 먼저 mimetype 파일을 (빈) 아카이브에 복사합니다.
3.이제 다른 폴더(META-INF 및 OEBPS)를 아카이브에 복사합니다.


http://idpf.org/epub/30/spec/epub30-ocf.html#physical-container-zip

MIME 유형 파일의 내용에는 선행 패딩이나 공백이 포함되어서는 안 되며, 유니코드 서명(또는 바이트 순서 표시)으로 시작되어서는 안 되며, MIME 유형 문자열의 대소문자는 위에 제시된 것과 정확히 같아야 합니다. 또한 MIME 형식 파일은 압축되거나 암호화되어서는 안 되며 ZIP 헤더에 추가 필드가 있어서는 안 됩니다.

답변3

EPUB를 생성하려면 먼저 압축 없이 MIME 유형을 추가하고, 두 번째로 다른 파일/폴더를 추가하는 두 단계 프로세스가 필요합니다. 따라서 7z를 사용하면 다음 명령을 사용할 수 있습니다.

7z a -mx=0 dummy.zip mimetype

와일드카드 *를 사용하려면 mimetype 파일을 다른 폴더로 이동하고 두 번째 단계를 시작해야 합니다.

7z a -r dummy.zip *

그런 다음 ZIP 이름을 EPUB로 바꾸면 끝납니다!

답변4

winrar를 사용하면 나에게 도움이 되었습니다. zip 아카이브에 MIME 유형을 추가한 다음(압축되지 않음!) 나중에 나머지 폴더를 일반 압축으로 추가했습니다.

이 솔루션은 파일 순서를 계속 변경하므로 7-zip에서는 작동하지 않았습니다.

관련 정보