我是Xamarin的新手。由于只有部分.Net程序集可用于PCL,所以遇到了很多困难。
我需要通过访问URL下载一个.db文件,并将其保存在本地驱动器中。由于该项目位于PCL中,因此我无法在项目中使用System.IO.File,这使我无法使用.NET类库中提供的文件操作。
例如:假设我正在访问URL“http://123.com/register.db”,并且该URL返回register.db作为响应。 我需要将register.db原封不动地保存在我的本地存储中。
我用于访问该URL的代码如下:
public static async Task LaunchURLForSync(string targetUrl)
{
try
{
using (HttpClient client = new HttpClient())
{
using (HttpResponseMessage response = await client.GetAsync(targetUrl, HttpCompletionOption.ResponseHeadersRead))
using (Stream streamToReadFrom = await response.Content.ReadAsStreamAsync())
{
string fileToWriteTo = Path.GetFileName();
using (Stream streamToWriteTo = File.Open(fileToWriteTo, FileMode.Create)) // This doesn't work with PCL for ex. FIle.Open etc
{
await streamToReadFrom.CopyToAsync(streamToWriteTo);
}
}
}
}
catch (Exception ex)
{
throw ex;
}
}
任何帮助都将不胜感激。提前感谢你 :)