我有如下的 Json 数据
{
"!type": "alarm",
"$": {
"12279": {
"!type": "alarm",
"title": "Default",
"$": {
"5955": {
"!type": "alarm",
"name": "Wake",
"day": "SUN",
"startTime": "06:00"
},
"29323": {
"!type": "alarm",
"name": "Away",
"day": "SUN",
"startTime": "08:00"
},
"2238": {
"!type": "alarm",
"name": "Home",
"day": "SUN",
"startTime": "18:00"
}
}
}
}
}
我的fbs是这样的
namespace space.alarm;
table Atom{
!type:string;
name:string;
startDay:string;
startTime:string; }
table AtomShell{
key:string (required, key);
value: Atom; }
table Alarm{
!type:string;
title:string;
$:[AtomShell]; }
table AlarmShell{
key:string (required, key);
value:Alarm; }
table Weeklyalarm{
!type:string;
$:[AlarmShell]; } root_type Weeklyalarm;
我试图实现谷歌平面缓冲区,但我遇到了类似的错误
- alarm.fbs:4:0: 错误:非法字符:!
- alarm.fbs:23:0: 错误:非法字符:$ (我已从 !type 中删除 ! 并将 $ 更改为美元以测试平面缓冲区的工作,但我无法更改动态 ID)
- Sample.json:25:0:错误:未知字段:12279
现在我的问题,
- 是否可以在平面缓冲区中使用动态 ID,如果可能,我应该如何进行?
- 可以在 ids 中使用特殊字符,如果可能的话怎么做?
提前致谢。