我正在尝试在 iOS 中与从网络流中获得的字符串进行字符串比较。
读取流的代码是:
uint8_t buffer[1024];
int len;
while ([inputStream hasBytesAvailable])
{
len = [inputStream read:buffer maxLength:sizeof(buffer)];
if (len > 0)
{
NSString *output = [[NSString alloc] initWithBytes:buffer length:len encoding:NSASCIIStringEncoding];
[self handleServerResponse: intCommand Response:output];
}else{
[self endComms];
}
}
另一端的服务器总是产生 1024 字节的响应,其中 chr(0) 被放置在数据的末尾以填充缓冲区。
当我进行字符串比较时:
if (strCut==@"B") {
//do something...
}
我总是得到否定的结果,大概是因为字符串包含响应和大量空字符。
在将响应读入字符串时,我希望能够从缓冲区中删除空字符,但我在 iOS 中没有任何运气。
帮助表示赞赏!
谢谢。
戴夫