Я написал код Tclsh
, который будет извлекать содержимое zip-файла в формате base64 с помощью метода xml-rpc. Я демпинг, что данные base64 в файл, используя следующий фрагмент кода:Tclsh convert base64 dump в zip-файл
#!/usr/bin/tclsh
...
set mybase64Dump [myXmlRpcCallToReturnThisDump]
set zipFilePtr [open "xyz.zip" "w"]
puts $zipFilePtr $mybase64Dump
close $zipFilePte
Zip файл получал генерироваться с XKbytes
размера, но при попытке открыть с помощью 7zip
он говорит, Is not Archive
. Но я копирую вставку с таким же дампом base64 в онлайн-конвертер. Это давало мне правильный извлекаемый zip-файл.
Это что-то, что я делаю неправильно?
Почтовый файл не просто содержит байты файла, который вы хотите сохранить: в нем также много метаданных, которые необходимо распаковать для понимания содержимого. Онлайновый конвертер, вероятно, создал эти метаданные для вас, но если вы просто храните необработанные данные в файле, это не будет архив zip. –