내 "zw"폴더의 "logo.png"파일을 ("fw/resources/logo.png")에서 "fw/resources"로 이름을 바꿀 수있는 사람이 있는지 궁금합니다. /logo.png.bak "), python의 zip 모듈을 사용합니다.zipmodule을 사용하여 zip 폴더의 파일 이름 바꾸기
답변
나는 그것이 가능하지 않다고 생각한다. zipfile 모듈은 그것에 대한 방법이없고, Renaming a File/Folder inside a Zip File in Java?에서 언급했듯이 zip 파일의 내부 구조가 방해가된다. 따라서 압축을 풀고 이름을 변경하고 압축을 풀어야합니다.
업데이트 : 그냥 Delete file from zipfile with the ZipFile Module을 발견했습니다.
좋아요, 어떻게하면 zip 폴더에있는 디렉토리를 삭제할 수 있습니까? – user715578
삭제는 shutil.rmtree의 os.rmdir을 사용하여 수행 할 수 있지만 폴더의 이름을 바꾸려면 shutil.move – rocksportrocker
을 사용하면됩니다. 실제로 zip 폴더의 파일을 어떻게 삭제합니까? – user715578
rocksportrocker에서 언급했듯이 zipfile 보관 파일에서 파일의 이름을 바꾸거나 지울 수 없습니다. zip 파일의 파일을 반복하여 원하는 파일을 선택적으로 추가 할 수 있습니다. 따라서 zip 파일에서 특정 디렉토리를 제거하려면 새 zip 파일로 복사하지 마십시오. 그러면 다음과 같이됩니다 :
source = ZipFile('source.zip', 'r')
target = ZipFile('target.zip', 'w', ZIP_DEFLATED)
for file in source.filelist:
if not file.filename.startswith('directory-to-remove/'):
target.writestr(file.filename, source.read(file.filename))
target.close()
source.close()
이렇게하면 모든 파일을 메모리로 읽어 들일 수 있으므로 큰 아카이브의 경우에는 이상적인 솔루션이 아닙니다. 작은 아카이브의 경우 이는 광고 된대로 작동합니다.
전체 파일을 실제로 메모리에로드합니까? – swdev
- 1. 폴더의 파일 이름 바꾸기
- 2. 배치를 사용하여 폴더의 모든 파일 이름 바꾸기
- 3. 폴더의 파일 이름 바꾸기 - PHP
- 4. Cygwin 폴더의 이름 바꾸기/매핑
- 5. Python을 사용하여 HTML 파일 이름 바꾸기
- 6. UISaveVideoAtPathToSavedPhotosAlbum을 사용하여 파일 이름 바꾸기?
- 7. $ zip 이름 바꾸기 함수가 PHP에서 작동하지 않습니다.
- 8. xib 파일 이름 바꾸기
- 9. file_upload.php의 파일 이름 바꾸기
- 10. 자바에서 파일 이름 바꾸기
- 11. Zend_View에서 파일 이름 바꾸기
- 12. 데비안의 파일 이름 바꾸기
- 13. OS 파일 이름 바꾸기
- 14. 복잡한 파일 이름 바꾸기
- 15. asp.net 파일 이름 바꾸기
- 16. Regex/Powershell을 사용하여 파일 이름 바꾸기
- 17. BizTalk FTP - 파일 이름 바꾸기
- 18. C# 서비스 이름 바꾸기 파일!
- 19. RegEx를 사용하여 폴더 이름 바꾸기
- 20. Clearcase 다중 파일 이름 바꾸기
- 21. PHP : ext없이 파일 이름 바꾸기
- 22. VB 스크립트 파일 이름 바꾸기?
- 23. Powershell에서 선택적 파일 이름 바꾸기
- 24. BASH의 여러 파일 이름 바꾸기
- 25. 업로드하는 동안 파일 이름 바꾸기
- 26. matlab에 이미지 파일 이름 바꾸기
- 27. 강제로 Java에서 파일 이름 바꾸기
- 28. 파일 이동 및 이름 바꾸기
- 29. Qt Creator에서 파일 이름 바꾸기
- 30. WiX : 제거시 파일 이름 바꾸기
내장 된'zipfile' 모듈로는 할 수 없습니다. – agf