我有两个字符串。
一旦是使用NSStream事件的TCP服务器的响应,使用:
NSString *output = [[NSString alloc] initWithBytes:buffer length:len encoding:NSASCIIStringEncoding];
其中一个是动态生成的字符串,应匹配来自NSStream的返回字符串。
我有两个NSLog,它们是相同的。 我试过NSLog字符串的长度,一个是两个字符更长 - 即使它们在“文本”形式中都是相同的。
有任何建议指出我正确的方向吗?
我需要知道它们是否匹配,就像它们一样,会触发另一个事件来增强并为我的应用添加其他功能。
答案 0 :(得分:0)
永远不要使用==来比较字符串。如果它们的内容是逐个字符相同的,则可以使用isEqualToString来比较2个字符串。但是,如果你的字符串有不同的长度,那么它们不是逐字符相同的。
编写一个for循环,使用方法characterAtIndex一次记录每个字符串1中的字符并进行比较。您可能需要记录字符'整数值,以便您可以看到有关不可打印的信息。
答案 1 :(得分:0)
谢谢大家。
修正了@rdelmar建议 - 我不知道在Objective-C中这是可能的:
NSString *trimOutput = [output stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]];