下载“;文本“;使用LiveConnectAPI从skydrive获取文件
本文关键字:skydrive 获取 文件 使用 文本 下载 LiveConnectAPI | 更新日期: 2023-09-27 18:22:37
我正在为我的windows phone 7应用程序使用LiveConnectAPI从skydrive下载文本文件
Text文件包含我需要在IsolatedStorage中写入的XML数据
问题是,当我从skydrive下载文件并写入IsolatedStorage
时,我在IsolatedStream中得到NULL
我需要编写skydrive根文件夹中TextFile的XML内容。
注意:-名为userData.txt的文件位于"me/skydrive/files"(skydrive的根文件夹,如果我访问根文件夹时出错,请更正我)
string id = string.Empty;
>client.GetCompleted += (obj, args) =>
{
List<Object> items = args.Result["data"] as List<Object>;
foreach (object item in items)
{
Dictionary<string, object> file = item as Dictionary<string, object>;
if (file["name"].ToString() == "userData.txt")
{
id = file["id"].ToString();
break;
}
}
client.DownloadAsync(id+"/content");
};
client.GetAsync("me/skydrive/files");
下载完成时
client.DownloadCompleted += (o, a) =>
{
MemoryStream outputStream = (MemoryStream)a.Result;
//Saving the file to Isolated Storage.
var myStore = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream myFileStream = myStore.CreateFile(GlobalConstants.cnst_storefile_name);
myFileStream.Write(outputStream.GetBuffer(), 0, (int)outputStream.Length);
myFileStream.Close();
StreamReader reader = new StreamReader(new IsolatedStorageFileStream(GlobalConstants.cnst_storefile_name, FileMode.Open, myStore));
string rawData = reader.ReadToEnd();
reader.Close();
};
}
您可以检查您使用的LiveConnect库的版本吗。微软最近对SkyDrive进行了一些突破性的更改,使用旧版本的库构建的代码不再有效。您需要5.4版本的库。