在Windows RT app中复制或打开外部文件

时间:2014-08-12 09:39:10

标签: c# windows-phone-8 windows-runtime

我想在我的windows rt应用程序中显示来自网站的pdf(适用于带有Windows 8的桌面)。我怎么处理这个?

如果我手动将文件添加到资源,我可以显示它。但是,如何处理不在我的资产文件夹中的文件?

  • 我可以将文件复制到StorageFolder吗?
  • 或者我可以直接从网站上打开文件吗?

请给我一些提示我如何解决这个问题。

THX

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您好我想在我的应用中打开它,我不想使用启动器。

我将带有HttpWebRequest的文件复制到LocalFolder并处理pdf。我用这种方式解决了它:

StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
StorageFile file = null;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(filepath);

//TODO Systemuser
request.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
var response = await request.GetResponseAsync();

List<Byte> allBytes = new List<byte>();
using (Stream imageStream = response.GetResponseStream()) {
      byte[] buffer = new byte[4000];
      int bytesRead = 0;
      while ((bytesRead = await imageStream.ReadAsync(buffer, 0, 4000)) > 0) {
           allBytes.AddRange(buffer.Take(bytesRead));
      }
}

file = await localFolder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
await FileIO.WriteBytesAsync(file, allBytes.ToArray());

await RenderPDFPage(fileName);