Experience Serialization - chaolunner/CloudNotes GitHub Wiki
FlatBuffers
-
Writing a schema
namespace MyGame; enum PhoneType : int { MOBILE = 0, HOME = 1, WORK = 2, } table PhoneNumber { number:string (required); type:int; } table People { name:string; age:int; phone:[PhoneNumber]; } table AddressBook { people:[People]; } root_type AddressBook;
-
Generate Code
执行命令行: flatc.exe --csharp -o Resource/Sample Sample.fbs 则可以生成目标语言的代码。
–csharp 指定了编译的目标语言。-o 则用于指定输出文件路径,如果没有提供则将当前目录作为输出目录。最后,则是.fbs文件路径。
-
二进制文件生成Json文件
执行命令行: flatc.exe --raw-binary -t Sample.fbs -- AddressBook.ab 则可以生成一个名叫AddressBook.json的文件,方便查看生成的二进制文件是否正确。
注意:AddressBook.ab前面有一个空格。