我正在尝试编写 HTTP POST 请求,但我需要先将数据转换为二进制格式。这可能是一个简单的问题,但我发现 R 连接确实令人困惑,而且我一直无法找到以我理解的方式解释它们的好资源。

举个例子,假设我想编码一个整数(8 字节),然后编码一个数字(4 字节)。这是我试过的代码:

myint <- as.integer(1339700942)
mydouble <- 1.2
obj <- file(open='w+b') #I've tried textConnection too, but no good
w.int <- writeBin(myint, obj, size=8, endian='big')
w.double <- writeBin(mydouble, obj, size=4, endian='big')

这允许我打开连接,但它写的只是 NULL 。在这种情况下使用连接和 writeBin 的正确方法是什么?

最佳答案

对象“obj”实际上不是必需的。如果 writeBin 正在写入 R 对象而不是 R 之外的文件,则最后三行可以替换为:

w.int <- writeBin(myint, raw(0), size=8, endian='big')
w.double <- writeBin(mydouble, raw(0), size=4, endian='big')

关于r - 在 R 中写入二进制数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11585599/

10-12 15:24