character vectors, specifying subdirectory and file(s)
within some package. The default, none, returns the
root of the package. Wildcards are not supported.
package
a character string with the name of a single package.
An error occurs if more than one package name is given.
lib.loc
a character vector with path names of R libraries.
See ‘Details’ for the meaning of the default value of NULL.
mustWork
logical. If TRUE, an error is given if there
are no matching files.
Value
A character vector of positive length, containing the file paths
that matched …, or the empty string, "", if none
matched (unless mustWork = TRUE). If matching the root of a package, there is no trailing separator. system.file() with no arguments gives the root of the
base package.
Details
This checks the existence of the specified files with
file.exists. So file paths are only returned if there
are sufficient permissions to establish their existence. The unnamed arguments in ... are usually character strings, but
if character vectors they are recycled to the same length. This uses find.package to find the package, and hence
with the default lib.loc = NULL looks first for attached
packages then in each library listed in .libPaths().
Note that if a namespace is loaded but the package is not attached,
this will look only on .libPaths().
See Also
R.home for the root directory of the R
installation, list.files. Sys.glob to find paths via wildcards.
system.file() # The root of the 'base' packagesystem.file(package = "stats") # The root of package 'stats'system.file("INDEX")
system.file("help", "AnIndex", package = "splines")