从api下载C#中的导出文件(zip)

时间:2016-12-21 15:23:29

标签: java c# api

我正在使用来自Qualtrics api的帖子和get请求。他们在java中有示例代码,但我很难将其转换为.net环境。 difficulity部分是下载导出文件(zip文件)。我的问题是如何在C#中实现httpClient.execute?我认为在java中它可以保存对象而无需下载到您的物理驱动器并解压缩文件.... 他们在java中的示例代码:

HttpGet statusGet = new HttpGet(fileUrl);
statusGet.setHeader("X-API-TOKEN", API_TOKEN);
HttpResponse response = httpClient.execute(statusGet);
   // Extract exported file
    ZipInputStream zs = new ZipInputStream(response.getEntity().getContent());
    ZipEntry entry;
    while ((entry = zs.getNextEntry()) != null)
    {
      FileOutputStream out = new FileOutputStream("./" + entry.getName());
      IOUtils.copy(zs, out);
      out.close();
    }
  }

这是我的c#:

using (var clientgetfile = new HttpClient())
{
    clientgetfile.DefaultRequestHeaders.Accept.Clear();
    clientgetfile.DefaultRequestHeaders.Add("X-API-TOKEN", "mytoken");
    clientgetfile.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/zip"));

    var response =  clientgetfile.GetAsync(fileUrl);
    DownloadFile = response.Result;
    var byteArray = DownloadFile.Content.ReadAsStreamAsync().Result;
    ....

0 个答案:

没有答案