This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author connexion2000
Recipients connexion2000
Date 2010-12-22.12:44:03
SpamBayes Score 9.436948e-05
Marked as misclassified No
Message-id <1293021846.1.0.84362256489.issue10757@psf.upfronthosting.co.za>
In-reply-to
Content
file = 'somefile.dat'
filename = "ółśąśółąś.dat"
zip = zipfile.ZipFile('archive.zip', 'w', zipfile.ZIP_DEFLATED)
zip.write(file, filename)

above produces very nasty filename in zip archive.
*************************************************************
file = 'somefile.dat'
filename = "ółśąśółąś.dat"
zip = zipfile.ZipFile('archive.zip', 'w', zipfile.ZIP_DEFLATED)
zip.write(file, filename.encode('cp852'))

this produces TypeError: expected an object with the buffer interface

Documentation says that:
There is no official file name encoding for ZIP files. If you have unicode file names, you must convert them to byte strings in your desired encoding before passing them to write().

I convert them to byte string but it ends with an error.
If it is documentation bug, what is the proper way to have filenames like "ółśąśółąś" in zip archive?
History
Date User Action Args
2010-12-22 12:44:06connexion2000setrecipients: + connexion2000
2010-12-22 12:44:06connexion2000setmessageid: <1293021846.1.0.84362256489.issue10757@psf.upfronthosting.co.za>
2010-12-22 12:44:03connexion2000linkissue10757 messages
2010-12-22 12:44:03connexion2000create