Доступ к атрибутам файлового соединения, созданного через file()
Я создаю файловое соединение через 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 ответа
Решение
Быстрый взгляд на 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"
Самое близкое, что я могу получить к тому, что вы хотите, это использовать summary (). Например:
summary(path)$mode
[1] "rt"
Ошибка при использовании file.info() заключается в том, что эта функция ожидает путь к файлу, то есть "C:/test.txt", в качестве аргумента.