|
Prev: How to use gnu readline library in program?
Next: Discover Islam - The Fastest Growing Religion in the World !
From: Wesley Brooks on 1 Jul 2008 11:38 Dear Users, I'm having a problem when trying to move script from Linux to Windows. A zipfile opperation is failing with the message: "BadZipFile: File is not a zip file" I have a simple scripts that reads a zip file in the same way as any other file into a string, then sends it across to a network where it is saved as perusual into a file, then read in and processed by zipfile. I've tried adding the flag to allow 64 bit and even using uncompressed zip files. Niether fixes the problem. The zip file and contents were created on linux. To be certain that was not the issue I have emptied the zip file, created a new one, opend all the files in wordpad and saved them, then put the contents into the new file. Still no joy. Any help would be greatly appreciated. On linux I'm running python 2.5 and on windows it is 2.4. Thanks, Wesley Brooks.
From: Marc 'BlackJack' Rintsch on 1 Jul 2008 11:45 On Tue, 01 Jul 2008 16:38:23 +0100, Wesley Brooks wrote: > Dear Users, > > I'm having a problem when trying to move script from Linux to Windows. > A zipfile opperation is failing with the message: > > "BadZipFile: File is not a zip file" > > I have a simple scripts that reads a zip file in the same way as any > other file into a string, then sends it across to a network where it > is saved as perusual into a file, […] Are you sure you read and save the file in binary mode, especially on windows!? Ciao, Marc 'BlackJack' Rintsch
From: John Machin on 1 Jul 2008 17:49
On Jul 2, 1:38 am, "Wesley Brooks" <wesbro...(a)gmail.com> wrote: > Dear Users, > > I'm having a problem when trying to move script from Linux to Windows. > A zipfile opperation is failing with the message: > > "BadZipFile: File is not a zip file" > > I have a simple scripts that reads a zip file in the same way as any > other file into a string, then sends it across to a network where it > is saved as perusual into a file, then read in and processed by > zipfile. If "saved as per usual" means something like open('foo.zip', 'w').write(the_string) then this is highly likely to be your problem. Use 'wb'. Get into the habit of using the 'b' flag on binary files in your scripts (whether reading or writing) and they'll be much more portable. Something to check: on the Linux side, do wc -l foo.zip (that option's 'L'.lower()) to get the number of pseudo-lines in your zip file, and compare the sizes of the file on Linux and Windows. What do you see? HTH, John |