windows - Flutter Desktop - flutter-desktop-embedding 如何将文件保存到硬盘

标签 windows flutter flutter-desktop

我在 Flutter 桌面上工作了一段时间,并且实现过程中一切顺利。到目前为止,我只实现了 UI、网络和内存缓存。现在我开始面临一个真正的问题,我无法找到解决方案。是否有一些开箱即用的可能性将文件保存到硬盘驱动器?我必须处理包含 PDF 文件的 base64 并将其放在硬盘上的某个位置。我应该使用为移动设备准备的函数,还是在桌面的 Flutter 中这是更复杂的东西,我必须为平台实现适当的函数并将其公开给 Flutter?如果这有任何改变,我主要针对 Windows 生态系统。我想到的另一个解决方案是准备 bash/power-shell 脚本来为我做这件事,但希望我不需要这样做:)

编辑

我在这里遇到的主要问题是我想检索用户文件夹的路径。有谁知道这是怎么做到的吗?

最佳答案

最好的方法是使用平台 channel 。 flutter-desktop-embedding 项目主持 desktop implementations of several flutter/plugins plugins , 而同时 path_provider不是最新的,它当然可以添加(已经有一个 macOS 实现的 PR)。那么你可以使用 getApplicationDocumentsDirectory()就像在移动设备上一样。

或者,您可以查看是否有环境变量为您提供所需的数据,因为 Dart 已经可以访问它们,但是跨操作系统版本/配置可能不那么可靠。

关于windows - Flutter Desktop - flutter-desktop-embedding 如何将文件保存到硬盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57741142/

相关文章:

windows - 是否有适用于 Windows 的 Glade3 安装程序?

flutter - dart/flutter 使用 sudo 运行进程

flutter - 我如何将数据发送到另一个页面/小部件?

dart - 从 JSON 中获取数据并添加到 initState() 上的列表中

flutter - Dart 中的空安全

flutter - Flutter Desktop 支持悬停吗?

visual-studio - 无法找到合适的 Visual Studio 工具链。请运行 `flutter doctor` 了解更多详情

windows - 将 .DLL 转换为 .SO

Windows 批处理文件和多处理器

c++ - 在 2 个程序之间传输信息 (Windows)