首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Flutter中读取YAML文件

问在Flutter中读取YAML文件
EN

Stack Overflow用户
提问于 2020-06-20 18:39:10
回答 1查看 2.1K关注 0票数 3

yaml 2.2.1包可以帮助Flutter用户读入YAML文件。不幸的是,文档并没有启发我。

代码语言:javascript
复制
import 'dart:convert';
import 'package:yaml/yaml.dart';

main() {
  // load a YAML file
  var doc = loadYaml("YAML: YAML Ain't Markup Language");
  print(doc['YAML']);

  // Encode a YAML file
  print(json.encode(doc));
}

我在文件夹里放了一个YAML文件

代码语言:javascript
复制
assets/yamlfiles/yamltoberead.yml

并在pubspec.yaml文件中编写了必要的行。

我想,我得把这行改为" YAML : YAML Ain't ...“添加到yamltoberead.yml文件的相对路径,但它引发了错误

代码语言:javascript
复制
type 'String' is not a subtype of type 'int' of 'index'

有没有其他方法可以读入YAML文件或者如何修复这个错误?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-18 14:13:12

不是将"YAML: YAML Ain't Markup Language"更改为yaml文件的路径,而是首先加载yaml文件的字符串版本,然后使用yaml包将其转换为地图。这是一个示例(您将需要导入flutter/services.dart):

代码语言:javascript
复制
import "package:flutter/services.dart" as s;
import "package:yaml/yaml.dart";

final data = await s.rootBundle.loadString('assets/yamlToRead.yaml');
final mapData = loadYaml(data);
print(mapData);

这将打印一个包含yaml数据的地图。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62484683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档