簡體   English   中英

xamarin forms 中的外部存儲

[英]External storage in xamarin forms

Im trying to create an excel file in xamarin forms, populate the file with some user generated data and save that excel file on the user's device so that they can share it with other applications(in my case google drive).

我已經檢查了微軟的文檔,但它並沒有真正幫助。

這是我使用的路徑:

  string filepath =  System.Environment.GetFolderPath(Environment.SpecialFolder.Personal);

也試過

string filepath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);

但是當我執行程序時它會中斷並說訪問路徑被拒絕..我多次搜索錯誤但找不到適合我的解決方案。 是的,我已經啟用了對外部存儲權限的讀寫。 請幫我。 另外,如果有人建議在 xamarin 中創建 excel 文件,這將有所幫助

Xamarin.Essentials 提供了檢查和請求運行時權限的能力。 您不要再次請求運行時權限。 檢查 MS 文檔。 https://docs.microsoft.com/en-us/xamarin/essentials/permissions?tabs=ios

我用 Xamarin.Essentials 1.6.1 進行了測試。

//write

 string text = "12345";
        var path = Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "excel.xlsx");
        using (var writer = File.CreateText(path))
        {
            await writer.WriteLineAsync(text);
        }

//read

 public async Task<string> ReadAsync()
    {
        var backingFile = Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), "excel.xlsx");

        if (backingFile == null || !File.Exists(backingFile))
        {
            return null;
        }

        var text = string.Empty;
        using (var reader = new StreamReader(backingFile, true))
        {

            var str = await reader.ReadToEndAsync();

            text = str;

        }

        return text;
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM