python:编解码器基类之流式的编码和解码

python:编解码器基类之流式的编码和解码


StreamWriter 和 StreamReader 类提供了一些泛用工作接口,可被用来非常方便地实现新的编码格式子模块。 请参阅 encodings.utf_8 中的示例了解如何做到这一点。

StreamWriter 对象

StreamWriter 类是 Codec 的子类,它定义了以下方法,每个流式写入器都必须定义这些方法以便与 Python 编解码器注册表相兼容。

class codecs.StreamWriter(stream, errors=‘strict’)
StreamWriter 实例的构造器。

所有流式写入器必须提供此构造器接口。 它们可以自由地添加额外的关键字参数,但只有在这里定义的参数才会被 Python 编解码器注册表所使用。

stream 参数必须为一个基于特定编解码器打开用于写入文本或二进制数据的文件类对象。

StreamWriter 可以通过提供 errors 关键字参数来实现不同的错误处理方案。 请参阅 错误处理方案 了解下层的流式编解码器可支持的标准错误处理方案。

errors 参数将被赋值给一个同名的属性。 通过对此属性赋值就可以在 StreamWriter 对象的生命期内在不同的错误处理策略之间进行切换。

write(object)
将编码后的对象内容写入到流。

writelines(list)
将拼接后的字符串可迭代对象写入到流(可能通过重用 write() 方法)。 无限长或非常大的可迭代对象不受支持。 标准的字节到字节编解码器不支持此方法。

reset()
重置用于保持内部状态的编解码器缓冲区。

调用此方法应当确保在干净的状态下放入输出数据,以允许直接添加新的干净数据而无须重新扫描整个流来恢复状态。

除了上述的方法,StreamWriter 还必须继承来自下层流的所有其他方法和属性。

StreamReader 对象

Strea

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FuncPlotCalc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值