如何在 Flutter 中将 XFile 转换为文件
Posted
技术标签:
【中文标题】如何在 Flutter 中将 XFile 转换为文件【英文标题】:How to convert a XFile to File in Flutter 【发布时间】:2021-05-17 00:30:57 【问题描述】:我想将 XFile 转换为 File 以将文件上传到 Firebase,因为 Firebase 仅以文件格式上传。 代码如下:
XFile videofile;
videofile = file;
await FirebaseStorage.instance.ref(imageRef).putFile(videoFile);
给出一个错误提示 XFile 无法上传到 Firebase
使用来自XFile package 的 XFile 包会给出另一个错误提示:
名称“XFile”在库“package:cross_file/src/types/interface.dart”和“package:xfile/src/xfile_core.dart”中定义(通过package:xfile/xfile.dart) '。 尝试对其中一个导入指令使用“作为前缀”,或者对除一个导入之外的所有指令隐藏名称。
文件中的其他依赖项是
import 'dart:async';
import 'dart:io';
import 'package:firebase_storage/firebase_storage.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:camera/camera.dart';
import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';
【问题讨论】:
【参考方案1】:File convertToFile(XFile xFile) => File(xFile.path);
【讨论】:
【参考方案2】:您好,这是今天(2021 年 8 月 26 日)更新库的人的答案。
XFile videofile;
videofile = file;
await FirebaseStorage.instance.ref(imageRef).putFile(File(videoFile!path));
如果有帮助请告知,谢谢。
【讨论】:
【参考方案3】:要将您的 Xfile 图像转换为文件图像以在小部件内显示图像,您可以使用此代码
X 文件?选定的图像;
Image.file(File(selectedImage!.path))
【讨论】:
【参考方案4】:File file = File(videofile.path);
.toFile() 可能不起作用,因为 XFile 插件可能与其他插件冲突
【讨论】:
以防万一其他人遇到这种情况。我不小心从 'dart:html' 导入,应该从 'dart:io' 导入。【参考方案5】:final file = videofile.toFile();
您可以在插件的文档here 中找到更多示例。
【讨论】:
以上是关于如何在 Flutter 中将 XFile 转换为文件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 中将 TextEditingController 转换为 String?
如何在 Flutter 中将 GIF 转换为 mp4 视频?
如何在 Flutter 中将 JSON 转换为对象? [关闭]