Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:Xamarin/C#与Context.MODE#u PRIVATE的等价物是什么_Android_Xamarin_Xamarin.android_Privacy_File Access - Fatal编程技术网

Android:Xamarin/C#与Context.MODE#u PRIVATE的等价物是什么

Android:Xamarin/C#与Context.MODE#u PRIVATE的等价物是什么,android,xamarin,xamarin.android,privacy,file-access,Android,Xamarin,Xamarin.android,Privacy,File Access,根据这一参考 打开文件流时,可以使用标志Context.MODE_PRIVATE保存和访问文件,即其他应用程序或用户无权访问文件 我如何在Xamarin/C下实现同样的目标# 从Environment.SpecialFolder.Personal获得路径的例子似乎很多 字符串路径=Environment.GetFolderPath(Environment.SpecialFolder.Personal) 但我看不到任何文件表明这些数据是该应用程序的私有数据。事实上,有很多轶事帖子表明它与Spec

根据这一参考

打开文件流时,可以使用标志Context.MODE_PRIVATE保存和访问文件,即其他应用程序或用户无权访问文件

我如何在Xamarin/C下实现同样的目标#

从Environment.SpecialFolder.Personal获得路径的例子似乎很多

字符串路径=Environment.GetFolderPath(Environment.SpecialFolder.Personal)

但我看不到任何文件表明这些数据是该应用程序的私有数据。事实上,有很多轶事帖子表明它与SpecialFolder.MyDocuments是同一个枚举

谁能告诉我如何写入应用程序专用的内部存储

非常感谢

谁能告诉我如何写入应用程序专用的内部存储

您可以使用以下C代码写入内部存储器:

string FILENAME = "hello_file";
string str = "hello world!";

using (var fos = OpenFileOutput(FILENAME, FileCreationMode.Private))
{
     //get the byte array
     byte[] bytes = Encoding.ASCII.GetBytes(str);
     fos.Write(bytes, 0, bytes.Length);
}
更新:您可以使用以下代码读回内容:

using (var ios = OpenFileInput(FILENAME))
{
    string strs;
    using (InputStreamReader sr = new InputStreamReader(ios))
    {
        using (BufferedReader br = new BufferedReader(sr))
        {
            StringBuilder sb = new StringBuilder();
            string line;
            while ((line = br.ReadLine()) != null)
            {
                sb.Append(line);
            }
            strs = sb.ToString();
        }
    }
}

谢谢你的回复。我的书写执行正常,但当我使用Context c=Android.App.Application.Context回读时;Stream fis=c.OpenFileInput(文件名),我得到了错误Java.IO.FileNotFoundException#我已经更新了答案,添加了读取文件的代码。请检查一下。