我一直在努力写一个文件到内部存储器。我希望将文件保存到用户可以看到和阅读的位置,例如Mydocuments,或者像whatsapp那样为我的应用程序创建一个单独的文件夹。我也想在iOS中使用同样的场景。
我该怎么做?我已经尝试了Xamarin.Essentials中的FileSystem助手,也使用了Environment.SpecialFolder,但似乎都不起作用。我只是想保存一个简单的文本文件。
我尝试过的链接..
https://docs.microsoft.com/en-us/xamarin/android/platform/files/
注意:我对外部存储不感兴趣。
发布于 2020-09-08 14:09:21
对于正在寻找答案的人来说。请访问此链接=> https://stackoverflow.com/a/63777656/9048996
这里有一个解决方案,它可以帮助在我们的内部存储或外部存储中创建一个单独的目录。然后,您可以在该专用目录中创建您自己的文件,这些文件是公共的,并且对用户可见,以便他们可以在需要时共享它们。提供的解决方案仅适用于android。
发布于 2020-09-04 21:14:13
是否要将数据存储在这些文件夹中?

如果是这样的话,对于android,我做了一个dependenceService来实现它。
例如,我想在Download文件夹中写入一个.txt文件。我在PCL中创建了接口。
public interface IWirteService
{
void wirteFile(string FileName);
}在pcl Button单击事件中执行它。
private void Button_Clicked(object sender, EventArgs e)
{
DependencyService.Get<IWirteService>().wirteFile("myfile.txt");
}然后在android平台上实现了该功能。
[assembly: Xamarin.Forms.Dependency(typeof(WirteFileService))]
namespace XamarinFirebase.Droid
{
public class WirteFileService:IWirteService
{
void IWirteService.wirteFile(string FileName)
{
string text = "GFG is a CS portal.";
byte[] data = Encoding.ASCII.GetBytes(text);
string DownloadsPath = Path.Combine(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, Android.OS.Environment.DirectoryDownloads);
string filePath = Path.Combine(DownloadsPath, FileName);
File.WriteAllBytes(filePath, data);
}
}
}请不要忘记添加以下权限,并实现运行时权限。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />下面是运行GIF的代码。

https://stackoverflow.com/questions/63740083
复制相似问题