为了在末尾续写文件而不是删除并重新创建文件,你需要将ZipFile的打开模式从"w"改为"a"。以下是修改后的代码:

def apk_add_file(file_path, apk_file_path, apk_file_name, vivii):
    try:
        if public_function.is_file_exist(file_path) and public_function.is_file_exist(apk_file_path):
            zf = zipfile.ZipFile(apk_file_path, "a", zipfile.ZIP_DEFLATED)
            name_list = zf.namelist()
            if apk_file_name in name_list:
                zf.close()
                apk_delete_file(apk_file_path, apk_file_name)
                zf = zipfile.ZipFile(apk_file_path, "a", zipfile.ZIP_DEFLATED)
                zf.write(file_path, apk_file_name)
                print("if apk_file_name in name_list:" + vivii)
                zf.close()
            else:
                print("else:" + vivii)
                zf.write(file_path, apk_file_name)
                zf.close()
            return True
        else:
            logging.error(
                "the " + file_path + " or " + apk_file_path + " does not exist!")
            return False
    except IOError:
        return False

在这个修改后的代码中,ZipFile的打开模式被改为"a",这表示以添加模式打开文件,以便在末尾续写数据

python2中函数总是将原有文件删除再创建写入如何改为在末尾续写?def apk_add_file2file_path apk_file_path apk_file_name vivii try if public_functionis_file_existfile_path and public_functionis_file_existapk_file_path

原文地址: https://www.cveoy.top/t/topic/ihgt 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录