如何在 .Net Maui Blazor 混合应用程序中导出和导入数据(如果可能)?

问题描述 投票:0回答:1

我有哪些选项可以从 Maui Blazor 混合应用程序交换数据。我可以创建 .csv 文件并将其保存到 Android 手机的“下载”文件夹中吗?就像从浏览器保存 .pdf 一样。对此必须做什么?就我而言,我想从 LiteDB 备份数据库文件,然后再读回该文件。Csv 就可以了。我不想使用电子邮件。

.net export-to-csv maui-blazor
1个回答
0
投票

首先请在Platforms\Android\AndroidManifest.xml中添加以下有关存储的权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="32" />    
<!-- Required only if your app needs to access images or photos that other apps created -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<!-- Required only if your app needs to access videos that other apps created -->
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<!-- Required only if your app needs to access audio files that other apps created -->
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />

然后在运行时检查存储权限。将以下代码放入Platforms\Android\MainActivity

#if ANDROID
        FileStream fileStreamen = new FileStream("/storage/emulated/0/Download/myyyx.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
        File.WriteAllText("/storage/emulated/0/Download/my.txt", "Hello");
#endif

然后创建文件并写入或读取它:

#if ANDROID
        FileStream fileStreamen = new FileStream("/storage/emulated/0/Download/myyyx.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
        File.WriteAllText("/storage/emulated/0/Download/my.txt", "Hello");
#endif

注意:我使用了

/storage/emulated/0/Download
,因为有关获取公共文件夹路径的API已被弃用。但
/storage/emulated/0/Download
仍然有效。

© www.soinside.com 2019 - 2024. All rights reserved.