我已创建一个addressbook.proto与该即时通讯良好,产生以下两个文件protobuffer throw runtime error as Failed to parse address book in latest latest version 3.0.0?
addressbook.pb.h
addressbook.pb.cc
与protoc -I=$SRC_DIR --cpp_out=$DST_DIR $SRC_DIR/addressbook.proto
我有看过我的地址簿名称readproto.cc
readproto代码。立方厘米
int main(int argc, char* argv[]) {
if (argc != 2) {
cerr << "Usage: " << argv[0] << " ADDRESS_BOOK_FILE" << endl;
return -1;
}
tutorial::AddressBook address_book;
{
// Read the existing address book.
fstream input(argv[1], ios::in | ios::binary);
if (!input) {
cout << argv[1] << ": File not found. Creating a new file." << endl;
} else if (!address_book.ParseFromIstream(&input)) {
cerr << "Failed to parse address book." << endl;
return -1;
}
}
----
}
和我编译为
C++ readproto.cc addressbook.pb.cc`pkg配置--cflags --libs protobuf的
我得到的可执行文件没有什么不好,但我的疑问是我应该与此可执行加载哪些文件?
我累
./a.out addressbook.proto
不知道哪些文件需要加载addressbook.proto是好?
result : Failed to parse address book
。
我是新与protobuffer需要帮助它从过去三天在这个.Struggling这是我最后的希望PLSS帮助,谢谢
我从我在执行所在的路径已经在下面的代码 https://developers.google.com/protocol-buffers/docs/cpptutorial 你可以请让从这个链接,我需要有bin知道采取作为参数 – user7953556
看到https://developers.google.com/protocol-buffers/docs/cpptutorial#writing-a-message你运行你的程序是这样的:。./a.out my_adress_book.bin – HughB
谢谢你的工作时? – user7953556