Znajdź nazwę pliku na podstawie pełnej ścieżki do pliku


156

Czy istnieje sposób na wyodrębnienie nazwy pliku z pełnej ścieżki pliku (części ścieżki pliku) bez kłopotów z manipulowaniem ciągiem?

Odpowiednik w Javie wyglądałby tak:

File f = new File ("C:/some_dir/a")
f.getName() //output a
f.getFullAbsolutePath() //output c:/some_dir/a

Odpowiedzi:


286

Posługiwać się

basename("C:/some_dir/a.ext")
# [1] "a.ext"
dirname("C:/some_dir/a.ext")
# [1] "C:/some_dir"

21
Wiedziałem o tym basename(), ale zapomniałem. Funkcje te powinny być wymienione w sekcji „Zobacz także” z list.files i file.path stronach pomocy.
Paul Rougieux,

6

Odpowiednik tidyverse znajduje się w pakiecie fs . {fs} używa libuv pod maską.

library("fs")

path_file("/some/path/to/file.xyz")
#> [1] "file.xyz"

path_dir("/some/path/to/file.xyz")
#> [1] "/some/path/to"

Utworzony 2020-02-19 przez pakiet reprex (v0.3.0)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.