Manipulate filename extensions
Functions to obtain (file_ext()
), remove (sans_ext()
), and
change (with_ext()
) extensions in filenames.
file_ext(x) sans_ext(x) with_ext(x, ext)
x |
A character of file paths. |
ext |
A vector of new extensions. It must be either of length 1, or the
same length as |
file_ext()
is similar to tools::file_ext()
, and
sans_ext()
is similar to tools::file_path_sans_ext()
.
The main differences are that they treat tar.(gz|bz2|xz)
and
nb.html
as extensions (but functions in the tools package
doesn't allow double extensions by default), and allow characters ~
and #
to be present at the end of a filename.
A character vector of the same length as x
.
library(xfun) p = c("abc.doc", "def123.tex", "path/to/foo.Rmd", "backup.ppt~", "pkg.tar.xz") file_ext(p) sans_ext(p) with_ext(p, ".txt") with_ext(p, c(".ppt", ".sty", ".Rnw", "doc", "zip")) with_ext(p, "html")
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.