我正在尝试为一些 dart:html 代码编写测试。
我有一个带有文件参数的方法(html 文件,而不是 io 文件)。
testFile(File file)
我能够使用文件所需的数据(减去文件名、日期等)创建一个 Blob,但似乎无法在 dart:html 中创建 File 对象,因为它是为内部保留的在 html_dartium.dart 中使用。
factory File._() { throw new UnsupportedError("Not supported"); }
还有其他方法来创建 HTML 文件对象吗?
我见过提到的 FileReaders,但这些结果要么是 String 要么是 uint8list。
最佳答案
经过进一步研究,我通过以下方式实现了我的目标:
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();
关于Dart Html - 将 Blob 转换为文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35164170/