我正在从 Bing Reporting API 加载 CSV 文件。文档说“报告文件已压缩;因此,您必须将其解压缩才能阅读报告。”所以我按照示例中所示保存原始文件,但无法让 SharpZipLib、7Zip 或 WinRar 读取压缩数据。
如何解压缩 Bing API 报告?
为了回答我自己的问题,我能够让 SharpZipLib 读取压缩数据,但前提是先将其复制到可查找的内存流中。这不是任意大文件的最佳解决方案,但我有理由相信我们的特定数据不会变得太大。
下载一些 bing 报告可能有点像歌舞 - 但流程有点像这样 -
下面是一个非常简化的示例,简单地提取 zip 并在某处保存 - 希望这会有所帮助,祝你好运
$zip_filepath = "location of the zip file";
$archive = new ZipArchive();
// file extension of extracted file
if ($archive->open($zip_filepath) !== true) {
throw new \Exception ("Decompress operation from ZIP file failed. Contact Ratio Rick");
}
$a = $archive->statIndex(0);
$file_name = $a['name'];
$save_path = "enter save file path";
$archive->extractTo($path . $file_name);
$archive->close();