我是R语言的新手。我有一个名为testing.exe的文件,我想在R中读取其中的每个256字节。
我遇到了https://www.r-bloggers.com/example-10-1-read-a-file-byte-by-byte/个网站以适合我的情况:
finfo = file.info("testing.exe")
toread= file("testing", "rb")
alldata = readBin(toread, raw(256), n = finfo$size, endian="little")
但是alldata给了我raw(0)。这是什么意思?我希望alldata会给出一系列字节值吗?我应该如何修改代码?谢谢!
答案 0 :(得分:0)
您真的无法在一个调用中全部读取一堆256字节的块。您可以读取整个文件...
fname <- "testing.exe"
finfo <- file.info(fname)
toread <- file(fname, "rb")
alldata <- readBin(toread, raw(), n = finfo$size, endian="little")
close(toread)
或者您可以循环读取一次大块
fname <- "testing.exe"
toread <- file(fname, "rb")
repeat {
chunk <- readBin(toread, raw(), n = 256, endian="little")
if (length(chunk)==0) break;
print(chunk);
}
close(toread)