Dart Html - 将Blob转换为文件

时间:2016-02-02 21:32:04

标签: dart dart-html

我正在尝试为一些dart:html代码编写测试。

我有一个带File参数的方法(html文件,而不是io文件)。

Activities

我能够创建一个包含文件所需数据的Blob(减去文件名,日期等),但似乎无法在dart:html中创建File对象,因为它是为内部保留的在html_dartium.dart中使用。

testFile(File file)

还有其他方法可以创建HTML文件对象吗?

我见过FileReaders,但结果来自String或uint8list。

2 个答案:

答案 0 :(得分:1)

经过进一步的研究,我通过以下方式实现了我的目标:

  List<String> file_contents = ["test\n"];
  Blob blob = new Blob(file_contents, 'text/plain', 'native');

  FileSystem _filesystem = await window.requestFileSystem(1024 * 1024, persistent: false);
  FileEntry fileEntry = await _filesystem.root.createFile('dart_test.csv');
  FileWriter fw = await fileEntry.createWriter();
  fw.write(blob);
  File file = await fileEntry.file();

答案 1 :(得分:0)

这样的东西
  Blob response = _downloadRequest.response;
  final FileReader reader = new FileReader();

  reader.onLoad.listen((e) {
        _handleData(reader);
      });
  reader.readAsArrayBuffer(response);

请参阅Downloading a file using Dart GDrive api with authorized GET request