python更新zip文件中文件

#更新zip文件中某一个文件
import
os import shutil import tempfile import zipfile from rat_tool.pack import * toolpath= os.getcwd()+"/tool" smalipath=os.path.join( toolpath,"smali.jar") def updateZip(zipname, filename, data): tmpfd, tmpname = tempfile.mkstemp(dir=os.path.dirname(zipname)) os.close(tmpfd) with zipfile.ZipFile(zipname, 'r') as zin: with zipfile.ZipFile(tmpname, 'w') as zout: zout.comment = zin.comment for item in zin.infolist(): if item.filename != filename: zout.writestr(item, zin.read(item.filename)) os.remove(zipname) os.rename(tmpname, zipname) with zipfile.ZipFile(zipname, mode='a', compression=zipfile.ZIP_DEFLATED) as zf: zf.writestr(filename, data)

使用:

#----更新apk文件中的classes3.dex文件------------------------------------------------------------------
def main():
    #将修改后的smali文件重新打包成dex,替换原来包中dex
    indir=r"D:\pa\apk\haoyishen\smali_classes3"
    outfile=r"D:\pa\apk\classes3.dex"
    #smali(indir, outfile)
    tempzip = r"D:\pa\apk\haoyishenbd.apk"
    
    buff=open(outfile,"rb").read()
    #updateZip(tempzip, "classes3.dex", buff)    
    
    signapk(tempzip, tempzip)
    

    print"111"

if __name__ == '__main__':
    main()

 原创:http://www.cnblogs.com/fply/p/8391070.html

转载于:https://www.cnblogs.com/fply/p/8391070.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值