本文整理汇总了C++中VariantType::Read方法的典型用法代码示例。如果您正苦于以下问题:C++ VariantType::Read方法的具体用法?C++ VariantType::Read怎么用?C++ VariantType::Read使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类VariantType
的用法示例。
在下文中一共展示了VariantType::Read方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: UnarchiveFile
bool KeyedUnarchiver::UnarchiveFile(File *file)
{
while(!file->IsEof())
{
VariantType key;
key.Read(file);
VariantType value;
value.Read(file);
objectMap[key.AsString()] = value;
}
return true;
}
示例2: Load
bool KeyedArchive::Load(File *archive)
{
while(!archive->IsEof())
{
VariantType key;
key.Read(archive);
if (archive->IsEof())break;
VariantType value;
value.Read(archive);
objectMap[key.AsString()] = value;
}
return true;
}
示例3: Load
bool KeyedArchive::Load(File *archive)
{
char header[2];
archive->Read(header, 2);
if ((header[0] != 'K') || (header[1] != 'A'))
{
archive->Seek(0,File::SEEK_FROM_START);
while(!archive->IsEof())
{
VariantType key;
key.Read(archive);
if (archive->IsEof())break;
VariantType *value = new VariantType();
value->Read(archive);
objectMap[key.AsString()] = value;
}
return true;
}
uint16 version = 0;
archive->Read(&version, 2);
if (version != 1)
{
Logger::Error("[KeyedArchive] error loading keyed archive, because version is incorrect");
return false;
}
uint32 numberOfItems = 0;
archive->Read(&numberOfItems, 4);
for (uint32 item = 0; item < numberOfItems; ++item)
{
VariantType key;
key.Read(archive);
if (archive->IsEof())break;
VariantType *value = new VariantType();
value->Read(archive);
objectMap[key.AsString()] = value;
}
return true;
}