R语言
gzcon
位于 base
包(package)。 说明
gzcon
提供了一个修改后的连接,该连接包装现有连接,并通过该连接解压缩读取或压缩写入。假定标准 gzip
标头。
用法
gzcon(con, level = 6, allowNonCompressed = TRUE, text = FALSE)
参数
con |
一个连接。 |
level |
0到9之间的整数,写入时的压缩级别。 |
allowNonCompressed |
合乎逻辑的。读取时是否允许非压缩输入? |
text |
合乎逻辑的。连接应该是text-oriented吗?这与连接模式不同(必须始终是二进制)。如果 |
细节
如果con
打开,则打开修改后的连接。关闭包装器连接也会关闭底层连接。
如果 allowNonCompressed
为 true,则从不提供 gzip
魔术头的连接中读取数据相当于从原始连接中读取数据,否则会出现错误。
压缩输出将包含嵌入的 NUL 字节,因此 con
不允许是用 open = "w"
打开的 textConnection
。使用可写的rawConnection
将数据压缩到变量中。
原始连接变得不可用:指向它的任何对象现在都将引用修改后的连接。因此,需要显式关闭新连接。
值
继承自类 "connection"
的对象。这与提供的连接编号相同,但内部结构有所修改。它有二进制模式。
例子
## Uncompress a data file from a URL
z <- gzcon(url("https://www.stats.ox.ac.uk/pub/datasets/csb/ch12.dat.gz"))
# read.table can only read from a text-mode connection.
raw <- textConnection(readLines(z))
close(z)
dat <- read.table(raw)
close(raw)
dat[1:4, ]
## gzfile and gzcon can inter-work.
## Of course here one would use gzfile, but file() can be replaced by
## any other connection generator.
zzfil <- tempfile(fileext = ".gz")
zz <- gzfile(zzfil, "w")
cat("TITLE extra line", "2 3 5 7", "", "11 13 17", file = zz, sep = "\n")
close(zz)
readLines(zz <- gzcon(file(zzfil, "rb")))
close(zz)
unlink(zzfil)
zzfil2 <- tempfile(fileext = ".gz")
zz <- gzcon(file(zzfil2, "wb"))
cat("TITLE extra line", "2 3 5 7", "", "11 13 17", file = zz, sep = "\n")
close(zz)
readLines(zz <- gzfile(zzfil2))
close(zz)
unlink(zzfil2)
也可以看看
相关用法
- R grep 模式匹配和替换
- R getwd 获取或设置工作目录
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R groupGeneric S3组通用函数
- R get 返回命名对象的值
- R gc 垃圾收集
- R gl 生成因子水平
- R grouping 分组排列
- R getLoadedDLLs 获取当前会话中加载的 DLL
- R gc.time 报告垃圾收集所花费的时间
- R gettext 翻译短信
- R grepRaw 原始向量的模式匹配
- R gctorture 酷刑垃圾收集者
- R getNativeSymbolInfo 获取一个或多个本机 (C/Fortran) 符号的说明
- R file.path 构造文件路径
- R vector 向量 - 创建、强制等
- R lapply 对列表或向量应用函数
- R dump R 对象的文本表示
- R Sys.getenv 获取环境变量
- R rank 样本排名
- R pushBack 将文本推回连接
- R strsplit 分割字符向量的元素
- R seq.Date 生成规则的日期序列
- R invisible 将打印模式更改为不可见
- R noquote “无引号”字符串打印类
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 (De)compress I/O Through Connections。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。