繁体   English   中英

如何压缩文本文件?

[英]How to compress a text file?

我创建了一个文本文件,我想压缩它。

我将如何完成?

我在论坛上做了一些研究; 找到了一个与此类似的问题,但是当我尝试了一个问题时,它由于输入了文本而不是文件而无法正常工作

import zlib, base64
text = 'STACK OVERFLOW'
code =  base64.b64encode(zlib.compress(text,9))
print code

来源:( 在python中压缩文件,并在再次打开文件时保持语法准确

当我尝试了这个错误时,例如:

hTraceback (most recent call last):
File "C:\Users\Shahid\Desktop\Suhail\Task 3.py", line 3, in <module>
code =  base64.b64encode(zlib.compress(text,9))
TypeError: must be string or read-only buffer, not file

这是我使用的代码:

import zlib, base64
text = open('Suitable.txt','r')
code =  base64.b64encode(zlib.compress(text,9))
print code

但是我想要的是一个要压缩的文本文件。

https://docs.python.org/2/library/gzip.html底部有一个标题为“如何GZIP压缩现有文件的示例”的部分

您应该使用以下代码执行您尝试的操作:

import zlib, base64
file = open('Suitable.txt','r')
text = file.read()
file.close()
code =  base64.b64encode(zlib.compress(text.encode('utf-8'),9))
code = code.decode('utf-8')
print(code)

但实际上它是要压缩的,因为code长于text

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM