我正在检索网络的SSID ......
CFArrayRef myArray = CNCopySupportedInterfaces();
CFDictionaryRef myDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0));
NSLog(@"Connected at:%@",myDict);
NSDictionary *myDictionary = (__bridge_transfer NSDictionary*)myDict;
NSString *wifiName = [myDictionary objectForKey:@"SSID"];
NSLog(@"ssid is %@",wifiName);
wifiName是" AardVark Red Connect"
但我想知道我是否连接到特定网络(物联网类型项目,我需要连接到特殊模式的特定SSID以进行配置)
所以我用.....剥夺了它。
NSArray* words = [wifiName componentsSeparatedByCharactersInSet :[NSCharacterSet whitespaceCharacterSet]];
NSString* nospacestring = [words componentsJoinedByString:@""];
现在我创建一个新的String,其中包含我想连接的内容.....
NSString *wantedNetwork = @"AardVarkRedConnect";
但如果我做了
if([wantedNetwork isEqualToString:nospacestring])
{
NSLog(@"Networks are the same");
}
else
{
NSLog(@"Networks are different");
}
我总是被绊倒在"网络不同"比较的一面。
如果我检查两个字符串的长度,那么" nospacestring"有额外的性格。我想也许这是一个多余的\ n但是这不是诀窍。
我错过了什么?
答案 0 :(得分:0)
您需要使用
[NSCharacterSet whitespaceAndNewlineCharacterSet]
而不是
[NSCharacterSet whitespaceCharacterSet]