compressFile {R.utils} | R Documentation |
Compressing and decompressing files
Description
Compressing and decompressing files such as gzip:ed and bzip2:ed files.
NOTE: The default (remove=TRUE
) behavior is that
the input file is removed after that the output file
is fully created and closed.
Usage
## Default S3 method:
compressFile(filename, destname=sprintf("%s.%s", filename, ext), ext, FUN,
temporary=FALSE, skip=FALSE, overwrite=FALSE, remove=TRUE, BFR.SIZE=1e+07, ...)
## Default S3 method:
decompressFile(filename, destname=gsub(sprintf("[.]%s$", ext), "", filename,
ignore.case = TRUE), ext, FUN, temporary=FALSE, skip=FALSE, overwrite=FALSE,
remove=TRUE, BFR.SIZE=1e+07, ...)
## Default S3 method:
isCompressedFile(filename, method=c("extension", "content"), ext, fileClass, ...)
## Default S3 method:
bzip2(filename, ..., ext="bz2", FUN=bzfile)
## Default S3 method:
bunzip2(filename, ..., ext="bz2", FUN=bzfile)
## Default S3 method:
gzip(filename, ..., ext="gz", FUN=gzfile)
## Default S3 method:
gunzip(filename, ..., ext="gz", FUN=gzfile)
Arguments
filename |
Pathname of input file. |
destname |
Pathname of output file. |
temporary |
If |
skip |
If |
overwrite |
If |
remove |
If |
BFR.SIZE |
The number of bytes read in each chunk. |
... |
Passed to the underlying function or alternatively not used. |
method |
A |
ext , fileClass , FUN |
(internal) Filename extension, file class,
and a connection |
Details
Internally bzfile()
and gzfile()
(see connections
) are used to read (write) files.
If the process is interrupted before completed, the partially written
output file is automatically removed.
Value
Returns the pathname of the output file. The number of bytes processed is returned as an attribute.
isCompressedFile()
, isGzipped()
and isBzipped()
return a logical
.
Note that with method = "extension"
(default), only the filename
extension is used to infer whether the file is compressed or not.
Specifically, it does not matter whether the file actually exists or not.
Author(s)
Henrik Bengtsson
Examples
## bzip2
cat(file="foo.txt", "Hello world!")
print(isBzipped("foo.txt"))
print(isBzipped("foo.txt.bz2"))
bzip2("foo.txt")
print(file.info("foo.txt.bz2"))
print(isBzipped("foo.txt"))
print(isBzipped("foo.txt.bz2"))
bunzip2("foo.txt.bz2")
print(file.info("foo.txt"))
## gzip
cat(file="foo.txt", "Hello world!")
print(isGzipped("foo.txt"))
print(isGzipped("foo.txt.gz"))
gzip("foo.txt")
print(file.info("foo.txt.gz"))
print(isGzipped("foo.txt"))
print(isGzipped("foo.txt.gz"))
gunzip("foo.txt.gz")
print(file.info("foo.txt"))
## Cleanup
file.remove("foo.txt")