0
私はyaml-cppにはかなり新しいです。その後、tutorials、そのチュートリアルは正常です。しかし、自分のyamlファイルを解析しようとすると、それは私には難しいことです。私は "演算子"と "ノード"と混乱しています。
yamlファイルを以下に示す。yaml-cppのサンプル0.5.3 in Linux
Device:
DeviceName: "/dev/ttyS2"
Baud: 19200
Parity: "N"
DataBits: 8
StopBits: 1
Control:
Kp: 5000
Ki: 8
FVF: 100
VFF: 1962
yamlファイルからデータを取得する例はありますか?ご協力いただきありがとうございます。 また私はこれに続いてquestion、私はそれを構築することができます。悪い変換例外で結果上記
#include <yaml-cpp/yaml.h>
#include <string>
#include <iostream>
using namespace std;
int main()
{
YAML::Node config = YAML::LoadFile("init.yaml");
//read device
std::string DeviceName = config["Device"][0]["DeviceName"].as<std::string>();
int Baud = config["Device"][1]["Baud"].as<int>();
std::string Parity = config["Device"][2]["Parity"].as<std::string>();
int DataBits = config["Device"][3]["DataBits"].as<int>();
int StopBits = config["Device"][4]["StopBits"].as<int>();
//read control
int Kp = config["Control"][0]["Kp"].as<int>();
int Ki = config["Control"][1]["Ki"].as<int>();
int FVF = config["Control"][2]["FVF"].as<int>();
int VFF = config["Control"][3]["VFF"].as<int>();
cout <<"DeviceName" << DeviceName << endl;
cout <<"Baud" << Baud << endl;
cout <<"Parity" << Parity << endl;
cout <<"DataBits" << DataBits << endl;
cout <<"StopBits" << StopBits << endl;
cout <<"Kp" << Kp << endl;
cout <<"Ki" << Ki << endl;
cout <<"FVF" << FVF << endl;
cout <<"VFF" << VFF << endl;
return 0;
}
を書くあなたが使用しているコードを投稿してください。 –
@JesseBeder、非常に遅く返事を申し訳ありません。私にいくつかの提案をお願いします。考える – crazymumu