Flutter-网络镜像到文件

标签 flutter dart flutter-dependencies

我有一个图片网址,例如“https://example.com/xyz.jpg”。现在,我想将图像放置在File类型变量中;
遵循以下原则:

File f = File("https://example.com/xyz.jpg");
重点是从给定的URL获取图像并将其另存为File变量。我该怎么办?
我在互联网上搜索了许多解决方案,但没有直接的方法。
PS:我可能会漏掉类似回答问题的内容,所以请让我知道可以找到它的链接。
编辑:我正在使用文件类型变量在共享功能中传递它。
This是我正在使用的库。
这是我当前的共享按钮点击代码
if (file != null) {
   ShareExtend.share(file.path, "image",
   sharePanelTitle: "share image title",
   subject: "share image subject");
}
谢谢你的帮助。

最佳答案

您需要下载图像并创建一个空文件,然后用图像数据填充该文件:


import 'dart:io';
import 'package:http/http.dart' as http;
import 'package:path/path.dart';
import 'package:path_provider/path_provider.dart';

Future<File> _fileFromImageUrl() async {
    final response = await http.get('https://example.com/xyz.jpg');

    final documentDirectory = await getApplicationDocumentsDirectory();

    final file = File(join(documentDirectory.path, 'imagetest.png'));

    file.writeAsBytesSync(response.bodyBytes);

    return file;
  }

关于Flutter-网络镜像到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63353484/

相关文章:

image - 如何在 Flutter 中修复像素化图像

Dart Editor 不允许我编辑包文件夹中的文件

Flutter:背景中的 SVG 图像引发错误

android - 依赖项列表中的无效项目 'Flutter for Android'

android - 在 Flutter 中使用 awesome_notifications 显示通知的问题

flutter - 如何在 Dart 中查询列表列表?

flutter - 如何修改flutter插件包名

flutter - 如何删除 Dart DevTools?

flutter - 升级到Flutter 1.2后无法构建

flutter 包在包中找不到类