Динамически создать текстовый файл для загрузки с помощью Dart

Как мы можем динамически создать текстовый файл для загрузки с использованием Dart без участия сервера?

1 ответ

Решение

Этот вопрос уже задавался и отвечал для JS. Решения, очень похожие на те, что в этой теме, применимы к Dart с очень небольшими изменениями. Например, мы могли бы создать элемент привязки с пользовательским URI данных и либо представить его пользователю, либо вызвать его click метод:

String encodedFileContents = Uri.encodeComponent("Hello World!");

new AnchorElement(href: "data:text/plain;charset=utf-8,$encodedFileContents")
  ..setAttribute("download", "file.txt")
  ..click();

См. Пример DartPad, который позволяет пользователю редактировать ячейки элемента таблицы, а затем загружать содержимое ячейки в виде CSV-файла.

Другие вопросы по тегам