2024-06-02 05:00:17 发布
网友
我试图编写一个avro消费者,其中的数据是字节编码的,并且没有模式发送。我跟着https://stackoverflow.com/a/25130722/2276564。 我如何迭代datumreader,我无法知道有多少记录将通过bytestream,我想一次迭代或读取所有记录。我想我不能使用DataFileReader,因为模式被剥离,流被编码了。
我目前正在遍历datumreader并使用错误处理来管理它将到达流的末尾的情况。
有没有更干净/更好的方法来实现这一点?
我用的.tell()方法解决了这个问题拜特西奥返回缓冲区的当前位置。每次读取后,程序都会查询当前位置,并检查其是否小于指定给缓冲区的有效负载的长度。在
while bytes_reader.tell() < len(payload): records.append(reader.read(decoder))
我用的.tell()方法解决了这个问题拜特西奥返回缓冲区的当前位置。每次读取后,程序都会查询当前位置,并检查其是否小于指定给缓冲区的有效负载的长度。在
相关问题 更多 >
编程相关推荐