嗨,我正在开发一个 iPhone 应用程序我在缓冲区中收到一些数据类型为 Uint8 的服务器响应,现在我想将缓冲区与字符串匹配,任何人都可以告诉我如何检查它吗?给出一段代码
void receiveData(CFSocketRef s, CFSocketCallBackType type, CFDataRef address, const void *data, void *info)
{
CFDataRef df = (CFDataRef) data;
int len = CFDataGetLength(df);
if(len <= 0) return;
CFRange range = CFRangeMake(0,len);
UInt8 buffer[len];
NSLog(@"Received %d bytes from socket %d\n",
len, CFSocketGetNative(s));
CFDataGetBytes(df, range, buffer);
NSLog(@"Client received: %s\n", buffer);
NSLog(@"As UInt8 coding: %@", df);
[mTextViewAlias setText:[NSString stringWithUTF8String: buffer]];
////////////.............////////////
LoginViewController *lvc = [[LoginViewController alloc] init];
NSString *search = @"ACPT";
NSRange match;
match = [buffer rangeOfString: search];
if (match.location == NSNotFound)
NSLog (@"Invalid Username Or Password");
else
{
[lvc goToWatchList];
NSLog (@"match found at index %i", match.location);
}
}
有人知道吗?我会非常感谢