sarc.py 文件源码

python
阅读 16 收藏 0 点赞 0 评论 0

项目:3dstools 作者: ObsidianX 项目源码 文件源码
def compress_file(self):
        # stream-compress to another file then overwrite original
        self.file = open(self.filename, 'rb')
        compressed_filename = '%s.zlib' % self.filename
        compressed_file = open(compressed_filename, 'wb')
        compressor = zlib.compressobj(self.compression_level)

        compressed_file.write(struct.pack('>I', os.stat(self.filename).st_size))

        data = self.file.read(READ_AMOUNT)
        while len(data) > 0:
            compressed_file.write(compressor.compress(data))
            data = self.file.read(READ_AMOUNT)

        compressed_file.write(compressor.flush(zlib.Z_FINISH))

        self.file.close()
        compressed_file.close()

        os.rename(compressed_filename, self.filename)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号