保存文件程序Xamarin Mac

时间:2018-12-09 21:12:17

标签: c# xamarin.forms visual-studio-mac

我正在使用Visual Studio Mac。在Microsoft网站上的文档中,有一些有关调用某些命令(如“ openDocument”,“ SaveDocument”)的说明,这些命令调用特殊的窗口,但是如何保存文本或其他文件本身?正如我发现的那样,Windows上常用的C#代码有时无法在Xamarin中正常工作。

[Export("saveDocumentAs:")]
    void ShowSaveAs (NSObject sender)
    {
        var dlg = new NSSavePanel();
        dlg.Title = "Сохранить текстовый файл";
        dlg.AllowedFileTypes = new string[] { "txt", "html", "md", "css" };

            if (dlg.RunModal() == 1)
            {
                var alert = new NSAlert()
                {
                    AlertStyle = NSAlertStyle.Critical,
                    InformativeText = "Документ успешно сохранён.",
                    MessageText = "Сохранение документа",
                };
                alert.RunModal();
            }


    }

1 个答案:

答案 0 :(得分:0)

以Xamarin形式保存和加载文件

System.IO类可用于访问每个平台上的文件系统。 File类可用于创建,删除和读取文件,而Directory类可用于创建,删除或枚举目录的内容。您还可以使用Stream子类,该子类可以提供对文件操作(例如文件内的压缩或位置搜索)的更大程度的控制。

可以使用File.WriteAllText方法编写文本文件:

File.WriteAllText(fileName, text);

可以使用File.ReadAllText方法读取文本文件:

string text = File.ReadAllText(fileName);

此外,File.Exists方法确定指定的文件是否存在:

bool doesExist = File.Exists(fileName);

可以使用。Environment.SpecialFolder枚举的值作为Environment.GetFolderPath方法的第一个参数,从.NET Standard库确定每个平台上文件的路径。然后可以使用Path.Combine方法将其与文件名结合使用:

string fileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "temp.txt");

更多信息:您可以参考this document and demo in here