Trouver le nom de fichier à partir du chemin complet du fichier

156

Existe-t-il un moyen d'extraire le nom du fichier du chemin complet du fichier (faisant partie d'un chemin de fichier) sans avoir à manipuler la chaîne?

L'équivalent en Java serait:

File f = new File ("C:/some_dir/a")
f.getName() //output a
f.getFullAbsolutePath() //output c:/some_dir/a
défoo
la source

Réponses:

286

Utilisation

basename("C:/some_dir/a.ext")
# [1] "a.ext"
dirname("C:/some_dir/a.ext")
# [1] "C:/some_dir"
mjv
la source
21
J'étais au courant basename(), mais j'ai oublié. Ces fonctions doivent être mentionnées dans la section "Voir aussi" des pages d'aide list.files et file.path .
Paul Rougieux
6

L' équivalent tidyverse réside dans le package fs . {fs} utilise libuv sous le capot.

library("fs")

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

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

Créé le 2020-02-19 par le package reprex (v0.3.0)

pat-s
la source