Как прочитать кусок 256 байтов в R? - PullRequest
0 голосов
/ 25 января 2019

Я новичок в языке R.У меня есть файл с именем testing.exe, и я хочу прочитать каждый 256-байтный файл в R.1-read-a-file-byte byte byte / , чтобы соответствовать моему случаю:

finfo = file.info("testing.exe")
toread= file("testing", "rb")
alldata = readBin(toread, raw(256), n = finfo$size, endian="little")

, но все данные дают мне необработанные (0).Что это значит?Я ожидаю, что alldata даст ряд значений байтов?Как мне изменить код?Спасибо!

1 Ответ

0 голосов
/ 25 января 2019

Вы не можете прочитать кучу кусков по 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)
...