本文整理汇总了C++中JsonIO::Get方法的典型用法代码示例。如果您正苦于以下问题:C++ JsonIO::Get方法的具体用法?C++ JsonIO::Get怎么用?C++ JsonIO::Get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JsonIO
的用法示例。
在下文中一共展示了JsonIO::Get方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: JsonizeError
template<> void Jsonize(JsonIO& io, Date& var)
{
if(io.IsLoading()) {
const Value& v = io.Get();
if(IsNull(v)) {
var = Null;
return;
}
if(IsString(v)) {
String text = v;
if(text.GetCount() > 6) {
Date d;
d.year = ScanInt(text.Left(4));
d.month = ScanInt(text.Mid(4, 2));
d.day = ScanInt(text.Mid(6));
if(d.IsValid()) {
var = d;
return;
}
}
}
throw JsonizeError("string expected for Date value");
}
else
if(IsNull(var))
io.Set(Null);
else
io.Set(Format("%04d%02d%02d", var.year, var.month, var.day));
}
示例2: min
void ValueMap::Data::Jsonize(JsonIO& jio)
{
if(jio.IsStoring()) {
ValueArray va;
int n = min(value.GetCount(), key.GetCount());
for(int i = 0; i < n; i++) {
ValueMap m;
m.Add("key", StoreAsJsonValue(key[i]));
m.Add("value", StoreAsJsonValue(value[i]));
va.Add(m);
}
jio.Set(va);
}
else {
Value va = jio.Get();
key.Clear();
value.Clear();
for(int i = 0; i < va.GetCount(); i++) {
Value k, v;
LoadFromJsonValue(k, va[i]["key"]);
LoadFromJsonValue(v, va[i]["value"]);
key.Add(k);
value.Add(v);
}
}
}
示例3: JsonizeError
template<> void Jsonize(JsonIO& io, WString& var)
{
if(io.IsLoading()) {
const Value& v = io.Get();
if(IsString(v))
var = v;
else
throw JsonizeError("string expected");
}
else
io.Set(var);
}