gpt4 book ai didi

dart - 下载数据并保存在本地

转载 作者:IT王子 更新时间:2023-10-29 07:06:38 24 4
gpt4 key购买 nike

我在将文件从可下载链接保存到手机本地存储时遇到问题。我的计划是创建一个将下载 a fileButton .

然后,我想将它保存手机的内部存储,以便可以访问来自手机的文件存储系统。我尝试使用 SharedPreferences 来实现它,但这并不是我真正想要的。谁能告诉我如何执行此功能?

非常感谢。

最佳答案

不需要使用 SharedPreferences 因为它是一个键/值数据库。在您的情况下,您正在尝试将文件写入磁盘,因此您需要一些库:

  • HTTP client这样你就可以发出网络请求
  • dart:io库,以便您可以将文件写入磁盘
  • path_provider在文件系统上查找位置的插件
  • dart:async这样您的用户界面就不会在下载文件时卡住

这是最简洁的代码:

static var httpClient = new HttpClient();
Future<File> _downloadFile(String url, String filename) async {
var request = await httpClient.getUrl(Uri.parse(url));
var response = await request.close();
var bytes = await consolidateHttpClientResponseBytes(response);
String dir = (await getApplicationDocumentsDirectory()).path;
File file = new File('$dir/$filename');
await file.writeAsBytes(bytes);
return file;
}

关于dart - 下载数据并保存在本地,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51166468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com