Il y a des moments où il est nécessaire que les fichiers d'une archive ZIP soient dans un ordre spécifique (par exemple, je crée actuellement des EPUB , qui nécessitent que la première entrée dans le ZIP soit le mimetype
fichier). Comment faire cela sous Windows?
J'utilise actuellement 7-Zip comme archiveur, mais je ne vois pas d'option pour contrôler l'ordre des fichiers. Cela peut-il être fait avec 7 zip? Sinon, quelles options ai-je?
Réponses:
Une façon serait: La plupart des archiveurs et des outils d'archivage ont la possibilité d'ajouter ou d'ajouter des éléments de fichier supplémentaires à l'archive d'origine. Créez votre archive avec les éléments que vous souhaitez en haut, puis ajoutez des éléments de fichiers supplémentaires à cette archive créée. Je sais que cela fonctionne dans les propres outils ZIP de Windows.
on dirait que la vraie réponse me dépasse, ici pour C # /programming/5898787/creating-an-epub-file-with-a-zip-library
ici pour HTML (en utilisant 7z)
http://next.blurb.com/2011/02/17/how-to-make-an-ipad-photo-book/
spécifiquement cette partie
http://idpf.org/epub/30/spec/epub30-ocf.html#physical-container-zip
la source
mimetype
, puis ajout des autres fichiers), mais sans succès. Lesmimetype
données sont arrivées en premier dans le fichier, mais la table des fichiers semble être classée par ordre alphabétique.7z l filename.zip
de lister le contenu d'un zip, et ils ne semblent pas être dans n'importe quel ordre (nom, chemin, date, taille ...). Ainsi, l'utilisation de cette ligne de commande peut aider à déterminer le véritable ordre des fichiers dans le zip..epub
dans un éditeur de texte et en examinant directement la table des fichiers, il semble donc que cette approche ne fonctionne tout simplement pas pour moi. Je vais prendre le marteau Python au problème et voir si cela ne le résout pas.Version GUI 7-zip:
mimetype
du fichier EPUBmimetype
dans le fichier EPUBmimetype
en!mimetype
!mimetype
au fichier EPUB!mimetype
aumimetype
fichier EPUB intérieurVersion simple glisser-déposer à 7 zip:
Accédez à la page de téléchargement 7-zip et téléchargez
7-Zip Extra: standalone console version, 7z DLL, Plugin for Far Manager
(ne fonctionne pas avec la version stable 9.20, mais fonctionne bien avec la version 9.38 beta et la version 15.06 beta). Extraire7za.exe
. Enregistrez le code ci-dessous en tant querepair.bat
fichier:Mettez
7za.exe
etrepair.bat
dans le même répertoire et faites simplement glisser votre fichier EPUBrepair.bat
.la source
La création d'un EPUB nécessite un processus en deux étapes, ajoutez d'abord le type MIME sans aucune compression (!), Puis ajoutez les autres fichiers / dossiers. Donc, en utilisant 7z, vous pouvez prendre les commandes suivantes:
Pour pouvoir utiliser le caractère générique *, vous devez déplacer le type MIME de fichier dans un autre dossier et démarrer la deuxième étape:
Après cela, renommez le ZIP en EPUB et vous êtes parti!
la source
Epubcheck Version 3.0.1 ERROR: C:/MYSELF/Books/1984---George-Orwell/1984---George-Orwell.epub: Mimetype entry missing or not the first in archive
D'après mon expérience, la réponse la plus simple (pour Windows, 7, 64 bits) est d'utiliser la fonctionnalité Zip intégrée de Windows. Utilisez le bouton "Envoyer vers" pour envoyer le type MIME vers un nouveau dossier zippé, puis utilisez 7Zip pour ajouter les META-INF et OEBPS au nouveau zip. Cela semble toujours fonctionner en termes de séquencement du fichier de type MIME en premier. Je n'ai pas réussi à effectuer cette opération uniquement avec 7-zip. (C'est pour ePUBS, mais cela devrait fonctionner, pour le séquençage, dans d'autres domaines également.)
J'espère que ça aidera quelqu'un d'autre.
la source
Utiliser winrar a fait l'affaire pour moi. J'ai ajouté le mimetype à une archive zip (non compressée!), Puis j'ai ajouté plus tard les dossiers restants, une compression régulière.
Cette solution n'a pas fonctionné avec 7-zip pour moi, car elle continue de réorganiser les fichiers.
la source
J'ai eu ce même problème lorsque je travaillais avec des fichiers EPUB.
Sur Windows 7, je l'ai corrigé avec cette étrange astuce où je m'assurais de trier tous les fichiers que j'allais créer dans un zip d'une manière qui faisait mimetype le fichier en haut (en les triant par taille généralement). Ensuite, je me suis assuré que j'ai marqué tous les fichiers de haut en bas avec mon curseur avant de les envoyer dans un dossier compressé (zip) (comme ceci: https://support.microsoft.com/en-us/help/14200/ windows-compress-uncompress-zip-files ). Après cela, je pouvais changer le nom et le type de fichier en n'importe quel .epub.
Cependant, après avoir mis à niveau vers Windows 10, cette astuce n'a plus fonctionné. Heureusement, j'ai trouvé un autre moyen. Commencez par envoyer le fichier souhaité en haut (mimetype) dans le fichier zip vers un dossier compressé (zip). Assurez-vous qu'il ne s'agit que de ce fichier. Ensuite, je prends les autres fichiers que je veux compresser (deux dossiers dans mon cas), marquez-les avec le curseur et faites-les glisser vers le fichier zip que je viens de créer. Windows ajoutera ensuite les nouveaux fichiers au fichier zip et conservera le fichier que vous avez initialement compressé.
la source