gpt4 book ai didi

r - 使用 R 从 LZMA 存档中提取文件

转载 作者:行者123 更新时间:2023-12-05 06:40:24 37 4
gpt4 key购买 nike

我正在尝试使用 R 从从包含 JSON 文件的 API 下载的 LZMA 存档中提取文件。在我的计算机上,我可以在 Windows 资源管理器中手动提取文件,没有任何问题。

这是我当前的代码(已删除 API 详细信息):

tempFile <- tempfile()
destDir <- "extracted-files"
if (!dir.exists(destDir)) dir.create(destDir)

download.file("api_url.tar.xz", destfile = tempFile)
untar(tempFile, exdir = destDir)

当我尝试提取文件时,收到以下错误消息:

/usr/bin/tar: This does not look like a tar archive
/usr/bin/tar: Skipping to next header
/usr/bin/tar: Exiting with failure status due to previous errors
Warning messages:
1: running command 'tar.exe -xf "C:\Users\XXX\AppData\Local\Temp\RtmpMncPWp\file2eec75e23a15" -C "extracted-files"' had status 2
2: In untar(tempFile, exdir = destDir) :
‘tar.exe -xf "C:\Users\XXX\AppData\Local\Temp\RtmpMncPWp\file2eec75e23a15" -C "extracted-files"’ returned error code 2

我正在使用带有 R 版本 3.3.1 (2016-06-21) 的 Windows 10。

最佳答案

使用 library(archive) 还可以读取存档中的特定 csv 文件,而无需先将其解压缩:

library(archive)
library(readr)
read_csv(archive_read("api_url.tar.xz", file = 1), col_types = cols()) # adjust file=XX as appropriate

这要快得多。

解压一切可用

archive_extract("api_url.tar.xz", dir=XXX)

这对我来说非常有效并且比未构建的 untar() 更快。它也适用于所有平台。它支持“tar”、“ZIP”、“7-zip”、“RAR”、“CAB”、“gzip”、“bzip2”、“compress”、“lzma”和“xz”格式。

关于r - 使用 R 从 LZMA 存档中提取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42719110/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com