我是Xamarin的新手。面對很多困難,由於只有一小部分.Net程序集可用於PCL。如何使用PCL從xamarin跨平臺項目的URL下載文件支持
我需要通過點擊保存在本地驅動器中所需的URL來下載.db文件。由於該項目在PCL中,因此這不允許我在我的項目中使用System.IO.File,因此無法執行.Net類庫中的文件操作。例如:假設我點擊URL「http://123.com/register.db」,並返回register.db作爲響應。我需要保存register.db,因爲它在我的本地存儲中。
我的代碼打網址如下
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;
}
}
任何幫助將得到高度讚賞。預先感謝您:)
你的代碼是不是真的工作:在第10行的函數路徑.GetFileName()接受一個字符串,但你的代碼沒有參數。按照我研究的 – Radinator
,沒有pcl的方式來下載和戴文件在本地存儲。如果你想這樣做,你必須在每個平臺上實現它 – Radinator
@Radinator請按照hVaughan3的方式來執行它,因爲他已經回答了它。有用。您需要下載數據並將其保存到數據緩衝區,並使用PCL存儲將其寫入本地存儲。 –