阅读TXT下载的OneDrive

时间:2014-02-27 16:43:23

标签: c#

我正在使用代码:

进行下载OneDrive txt文件

var downloadOperationResult = await cliente.DownloadAsync(idOfFile);

using (Stream downloadStream = downloadOperationResult.Stream)
{
    if (downloadStream != null)
    {                        
         //download completed
    }
}

我使用以下代码阅读下载的文件(代替评论:“//下载完成”)

using (StreamReader sr = new StreamReader(downloadStream))
{
string text = sr.ReadToEnd();
}

但是不是读取txt就是读取文件属性。 输出:

{
"id":"file. + idFile
"from":{ 
"name":"myname",
"id":the id
},
"name": name of file
"description": ""
"parent_id": id of folder
(...)

有人能帮帮我吗? (我正在为Windows Phone开发)

2 个答案:

答案 0 :(得分:1)

要获取文件内容而不是文件元数据,请将“/ content”添加到文件ID

文件元数据

path = "file.8c8ce076ca27823f.8C8CE076CA27823F!129"

文件内容

path = "file.8c8ce076ca27823f.8C8CE076CA27823F!129/content"

示例:

LiveConnectClient liveClient = new LiveConnectClient(liveSession);
LiveDownloadOperation operation = 
             await liveClient.CreateBackgroundDownloadAsync(fileId + "/content");
var operationResult = await operation.StartAsync();

var fileContent = 
             await CustomMethod(await operationResult.GetRandomAccessStreamAsync());

return fileContent;

答案 1 :(得分:0)

前一段时间问了问题,但有人可能会在答案中找到价值。在Windows Phone上,您将需要处理文件下载异步。这是为了处理用户可以远离应用程序页面的情况。

您可以在http://msdn.microsoft.com/en-US/library/dn659730.aspx

找到更多信息
try
{
    LiveDownloadOperation operation = await connectClient.CreateBackgroundDownloadAsync(filePath);
    var result = await operation.StartAsync();
    // Handle result.
}
catch
{
    // Handle errors.
}