Я пытаюсь выполнить сравнение строк в 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.
Помощь оценена!
Спасибо.
Dave