分批读取二进制文件

视线

有没有办法如何将二进制文件部分读取到R中?

使用readBin可以指定要读取的记录数,但是可以在特定位置读取记录吗?

我需要在有限的PC内存下读取和分析大文件。

太空人

seek()就像在C程序中一样使用该函数。

制作一个测试文件:

> cat(LETTERS,file="letters.txt")

看看它是什么-带有空格分隔符的大写字母:

> system("cat letters.txt") # unix only
 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

打开:

> con = file("letters.txt","rb")

去某个地方读一些:

> seek(con,3)
[1] 0
> readBin(con,"raw",10)
 [1] 20 43 20 44 20 45 20 46 20 47

这些是ASCII码。去别的地方再读一些:

> seek(con,7)
[1] 13
> readBin(con,"raw",10)
 [1] 20 45 20 46 20 47 20 48 20 49

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章