什么是二进制文件以及何时在R中使用writeBin()

时间:2013-08-08 18:55:58

标签: r binaryfiles

我无法理解二进制格式的本质及其在R中的用处,所以我进行了一些实验:

在R:

y1 = rbind(c('a', 'b'), c('c', 'd'))
write.table(y1, 'f1', quote=F, col.names=F, row.names=F)
conn = file('f2', 'wb')
writeBin('a b\nc d\n', conn)
close(conn)

在bash中:

cat f1
# a b
# c d
cat f2
# a b
# c d

这些看起来完全一样,但如果我区分它们:

diff f1 f2
# Binary files f1 and f2 differ

diff并没有告诉我有什么区别。

回到主题,什么是二进制文件(因为在PC上一切都是二进制文件),在什么情况下我应该在R中使用它?

1 个答案:

答案 0 :(得分:0)

二进制苍蝇可以使用任何256位模式。 Ascii和其他文件受到限制。因此,二进制文件显然可以保存ascii文本,如上所述,但更灵活。

Useful from UMD

二进制文件的使用来自docs

对于您的diff命令,仅输出它们不同的标准行为并不再提供任何信息。我认为换行符的编码方式不同。