Checks the specified path to a directory for formatting consistencies, such as trailing slashes, etc.

checkPath(path, create)

# S4 method for character,logical
checkPath(path, create)

# S4 method for character,missing
checkPath(path)

# S4 method for `NULL`,ANY
checkPath(path)

# S4 method for missing,ANY
checkPath()

Arguments

path

A character string corresponding to a directory path.

create

A logical indicating whether the path should be created if it doesn't exist. Default is FALSE.

Value

Character string denoting the cleaned up filepath.

Note

This will not work for paths to files. To check for existence of files, use file.exists, or use file_test with op = "-f". To normalize a path to a file, use normPath or normalizePath.

See also

file.exists, dir.create.

Examples

## normalize file paths paths <- list("./aaa/zzz", "./aaa/zzz/", ".//aaa//zzz", ".//aaa//zzz/", ".\\aaa\\zzz", ".\\aaa\\zzz\\", file.path(".", "aaa", "zzz")) checked <- normPath(paths) length(unique(checked)) ## 1; all of the above are equivalent
#> [1] 1
## check to see if a path exists tmpdir <- file.path(tempdir(), "example_checkPath") dir.exists(tmpdir) ## FALSE
#> [1] FALSE
tryCatch(checkPath(tmpdir, create = FALSE), error = function(e) FALSE) ## FALSE
#> [1] FALSE
checkPath(tmpdir, create = TRUE)
#> [1] "/tmp/RtmpqKjqWd/example_checkPath"
dir.exists(tmpdir) ## TRUE
#> [1] TRUE
unlink(tmpdir, recursive = TRUE)