我对yaml-cpp非常陌生。我尝试了最简单的程序,但它失败了,而且我无法从GitHub存储库中找到答案。
#include <iostream>
#include "yaml-cpp/yaml.h"
using namespace std;
int main()
{
YAML::Node config = YAML::LoadFile("sample.yaml");
return 0;
}来自YAML官网的sample.yaml示例:
--- !clarkevans.com/^invoice
invoice: 34843
date : 2001-01-23
bill-to: &id001
given : Chris
family : Dumars
address:
lines: |
458 Walkman Dr.
Suite #292
city : Royal Oak
state : MI
postal : 48046
ship-to: *id001
product:
- sku : BL394D
quantity : 4
description : Basketball
price : 450.00
- sku : BL4438H
quantity : 1
description : Super Hoop
price : 2392.00
tax : 251.42
total: 4443.52
comments: >
Late afternoon is best.
Backup contact is Nancy
Billsmer @ 338-4338.以下是错误消息:
libc++abi.dylib: terminating with uncaught exception of type YAML::BadFile: yaml-cpp: error at line 0, column 0: bad file是库构建问题,还是YAML语法问题,还是我的API使用问题?
我使用的是yaml-cpp版本0.5.1。
发布于 2014-04-17 05:52:56
yaml-cpp似乎找不到您的文件。你能加载任何文件吗?确保该文件位于程序的工作目录中,并且为了正常起见,请确保您可以先加载一个非常简单的文件。
发布于 2014-04-16 19:35:22
我认为您正在使用的yaml-cpp版本中的YAML解析器还不够先进,无法处理示例文件的第一行。示例文件试图演示相当多的更高级的YAML特性。看起来你的解析器不能全部处理它们。我建议您从一个更简单的示例文件开始。
我用三个在线验证器检查了你的文件,结果如下:
毫无疑问,该文件是有效的YAML,但这并不意味着所有现有的解析器都可以解析它!
发布于 2018-11-08 22:54:57
根据您提供的路径,您的yaml文件需要位于您的endstate所在的位置。
https://stackoverflow.com/questions/23108179
复制相似问题