通过 readRDS 从 .tar 文件中读取特定文件
Reading a specific file from a .tar file via readRDS
假设我有一个文件 data.tar
,并且在这个 .tar
文件中我有一个名为 file_1.rds
的文件。有没有一种方法可以读取 file_1.rds
(通过 readRDS()
)而无需先解包 data.tar
.
这有点棘手,但以下是可行的:
tar_filename = 'data.tar'
rds_name = 'file_1.rds'
con = pipe(paste('tar xf', shQuote(tar_filename), '-O' , shQuote(rds_name)), 'rb')
result = readRDS(gzcon(con))
close(con)
假设我有一个文件 data.tar
,并且在这个 .tar
文件中我有一个名为 file_1.rds
的文件。有没有一种方法可以读取 file_1.rds
(通过 readRDS()
)而无需先解包 data.tar
.
这有点棘手,但以下是可行的:
tar_filename = 'data.tar'
rds_name = 'file_1.rds'
con = pipe(paste('tar xf', shQuote(tar_filename), '-O' , shQuote(rds_name)), 'rb')
result = readRDS(gzcon(con))
close(con)