从Windows Phone 8.1中的google驱动器下载txt文件

时间:2017-01-24 07:59:30

标签: c# file download windows-phone-8.1

我正在做一个Windows手机项目,需要从互联网上下载文本文件并阅读其内容。

这是我尝试过的(但它没有用)

private async  Task pobierz()
{
  string source = "https://drive.google.com/file/d/0BzgKBwKyU4oORkxxSlVITGswb1E/view?usp=sharing";
  string LocalName = "hej.txt";
  var srce = new Uri(source, UriKind.Absolute);
  // var destinationFile =await KnownFolders.PicturesLibrary.CreateFileAsync()
  StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///Assets/hej.txt"));

  var downloader = new BackgroundDownloader();
  DownloadOperation download = downloader.CreateDownload(srce,file);
}   

1 个答案:

答案 0 :(得分:0)

有关如何使用BackgroundDownloader的详细说明,请参阅https://msdn.microsoft.com/en-us/library/windows/apps/xaml/jj152726.aspx?f=255&MSPPError=-2147217396

您需要实现并调用以下方法:

private async void HandleDownloadAsync(DownloadOperation download, bool start)
{
    try
    {   
        // Store the download so we can pause/resume.
        activeDownloads.Add(download);

        Progress<DownloadOperation> progressCallback = new Progress<DownloadOperation>(DownloadProgress);
        if (start)
        {
             // Start the download and attach a progress handler.
             await download.StartAsync().AsTask(cts.Token, progressCallback);
        }
        else
        {
             // The download was already running when the application started, re-attach the progress handler.
             await download.AttachAsync().AsTask(cts.Token, progressCallback);
        }

        ResponseInformation response = download.GetResponseInformation();
        Log(String.Format("Completed: {0}, Status Code: {1}", download.Guid, response.StatusCode));
    }
    catch (TaskCanceledException)
    {
        Log("Download cancelled.");
    }
    catch (Exception ex)
    {
        LogException("Error", ex);
    }
    finally
    {
        activeDownloads.Remove(download);
    }
}