R: Read/write a complete file

read_file {readr} | R Documentation

## Read/write a complete file

### Description

`read_file()` reads a complete file into a single object: either a character vector of length one, or a raw vector. `write_file()` takes a single string, or a raw vector, and writes it exactly as is. Raw vectors are useful when dealing with binary data, or if you have text data with unknown encoding.

### Usage

    read_file(file, locale = default_locale())

    read_file_raw(file)

    write_file(x, file, append = FALSE, path = deprecated())

### Arguments

`file` | Either a path to a file, a connection, or literal data (either a single string or a raw vector). Files ending in `.gz`, `.bz2`, `.xz`, or `.zip` will be automatically uncompressed. Files starting with `http://`, `https://`, `ftp://`, or `ftps://` will be automatically downloaded. Remote gz files can also be automatically downloaded and decompressed. Literal data is most useful for examples and tests. To be recognised as literal data, the input must be either wrapped with `I()`, be a string containing at least one new line, or be a vector containing at least one string with a new line. Using a value of `clipboard()` will read from the system clipboard.
`locale` | The locale controls defaults that vary from place to place. The default locale is US-centric (like R), but you can use `locale()` to create your own locale that controls things like the default time zone, encoding, decimal mark, big mark, and day/month names.
`x` | A single string, or a raw vector to write to disk.
`append` | If `FALSE`, will overwrite existing file. If `TRUE`, will append to existing file. In both cases, if the file does not exist a new file is created.
`path` | Use the `file` argument instead.

### Value

`read_file`: A length 1 character vector. `read_lines_raw`: A raw vector.

### Examples

    read_file(file.path(R.home("doc"), "AUTHORS"))
    read_file_raw(file.path(R.home("doc"), "AUTHORS"))

    tmp <- tempfile()

    x <- format_csv(mtcars[1:6, ])
    write_file(x, tmp)
    identical(x, read_file(tmp))

    read_lines(I(x))

[Package readr version 2.1.2 Index]