Learn R Programming

xfun (version 0.30)

file_ext: Manipulate filename extensions

Description

Functions to obtain (file_ext()), remove (sans_ext()), and change (with_ext()) extensions in filenames.

Usage

file_ext(x)

sans_ext(x)

with_ext(x, ext)

Arguments

x

A character of file paths.

ext

A vector of new extensions. It must be either of length 1, or the same length as x.

Value

A character vector of the same length as x.

Details

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.

Examples

Run this code
# NOT RUN {
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")
# }

Run the code above in your browser using DataLab