我从连接的套接字接收iPad应用程序中的数据。 我正在使用以下方法将收到的数据转换为NSString:
NSString *data = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding].
然后我使用
从字符串创建子字符串NSString *substring1 = [data substringFromIndex:length-9]
NSString *substring2 = [data substringFromIndex:length-3]
其中length是[数据长度]。
然后我将substring2
与@"/>"
字符串进行比较,如下所示
[substring2 compare:@"/>"]
在这里我检查了substring2
的值,同时调试应用程序的值是@"/>"
但比较结果将返回NSOrderedDescending
而不是NSOrderedSame
。
有人可以帮忙吗?
答案 0 :(得分:0)
你的字符串有尾随空格。您提取的字符串长度为3,长度必须为3。
现在您将其与长度为2的@"/>"
进行比较。
你需要做到这一点:
NSString *data = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding].
data = [data stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
现在进行子串并比较。