本文整理汇总了C++中TPtrC8::MatchF方法的典型用法代码示例。如果您正苦于以下问题:C++ TPtrC8::MatchF方法的具体用法?C++ TPtrC8::MatchF怎么用?C++ TPtrC8::MatchF使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TPtrC8
的用法示例。
在下文中一共展示了TPtrC8::MatchF方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ParseTaggedDataL
void TaggedDataParser::ParseTaggedDataL(const TDesC8& aData, MTaggedDataParserClient& aClient)
{
TPtrC8 data(aData);
TInt readPosition = 0;
TBool moreData = data.Length() ? ETrue : EFalse;
while (moreData)
{
// Assumes that this segment will begin with a tag
TPtrC8 restOfData = data.Mid(readPosition);
TInt endPos = restOfData.MatchF(KTagMatch);
if (endPos == KErrNotFound)
User::Leave(KErrCorrupt);
// extract the tag
TPtrC8 tag = restOfData.Left(KTagLength);
readPosition += KTagLength;
// Find the next tag
restOfData.Set(data.Mid(readPosition));
endPos = restOfData.MatchF(KTagMatch);
TPtrC8 tagData;
if (endPos == KErrNotFound)
{
// If we didn't find a tag, we must be at the end of the data
tagData.Set(restOfData);
readPosition = restOfData.Length();
moreData = EFalse;
}
else
{
tagData.Set(restOfData.Left(endPos));
readPosition += endPos;
}
aClient.ProcessTaggedDataL(tag, tagData);
}
}