如何在二进制文件中编写xdr打包数据

时间:2014-04-10 17:02:33

标签: python-3.x xdr

我想将数组转换为xdr格式并以二进制格式保存。这是我的代码:

# myData is Pandas data frame, whose 3rd col is int (but it could anything else)

import xdrlib

p=xdrlib.Packer()
p.pack_list(myData[2],p.pack_int)

newFile=open("C:\\Temp\\test.bin","wb")
# not sure what to put
# p.get_buffer() returns a string as per document, but how can I provide xdr object?
newFile.write(???) 
newFile.close()

如何向newFile.write功能提供XDR-“打包”数据?

由于

1 个答案:

答案 0 :(得分:0)

XDR是一种非常原始的数据格式。除了各种数据类型的编码之外,它的规范(RFC 1832)没有指定任何文件头或其他任何文件头。

p.get_buffer() 获得的二进制字符串是您提供给p的数据的XDR编码。没有其他类型的XDR对象。

我怀疑你想要的只是newFile.write(p.get_buffer())

与XDR问题无关,我建议使用with语句来处理关闭文件。