访问通过file()创建的文件连接的属性

时间:2012-08-28 11:38:02

标签: r file connection-string file-connection

我正在通过path <- file("C:/test.txt")创建文件连接,当打印与连接相关联的对象时,我可以查看连接的“属性”:

> path
  description         class          mode          text        opened 
"C:/test.txt"        "file"           "r"        "text"      "closed" 
     can read     can write 
        "yes"         "yes" 

但是,我似乎无法弄清楚如何访问各种属性值

这是我到目前为止所尝试的内容:

> attributes(path)
$class
[1] "file"       "connection"

$conn_id
<pointer: 0x0000004b>

> path$description
Error in path$description : $ operator is invalid for atomic vectors

> path["description"]
[1] NA

> file.info(path)
Error in file.info(path) : invalid filename argument

有什么想法吗?

2 个答案:

答案 0 :(得分:11)

快速查看base:::print.connection会显示您想要summary(path)

summary(path)
$description
[1] "C:/test.txt"

$class
[1] "file"

$mode
[1] "r"

$text
[1] "text"

$opened
[1] "closed"

$`can read`
[1] "yes"

$`can write`
[1] "yes"

答案 1 :(得分:1)

我最接近你想要的是使用 summary()。例如:

summary(path)$mode
[1] "rt"

使用 file.info()的错误是因为该函数需要文件路径 ie “C:/test.txt”作为其参数。