我必须阅读一个 .txt 文件,该文件看起来像,
WIPRO=Class_Name1
TCS=Class_Name2
现在我想要 Class_Name1 和 Class_Name2。如何在 Objective-C 中获取这个字符串?我没有在 NSString 中找到任何函数来获取字符的索引。就像我们在 C# 中有 getIndex() 一样。请告诉我如何继续。
我必须阅读一个 .txt 文件,该文件看起来像,
WIPRO=Class_Name1
TCS=Class_Name2
现在我想要 Class_Name1 和 Class_Name2。如何在 Objective-C 中获取这个字符串?我没有在 NSString 中找到任何函数来获取字符的索引。就像我们在 C# 中有 getIndex() 一样。请告诉我如何继续。
好的,会再试一次。这种格式非常简单。
componentsSeparatedByString:
是你想要的神奇方法。使用它将文本字符串拆分为每一行的数组,然后拆分每一行以访问=
.
- (NSDictionary*)dictFromConfigString:(NSString*)myTxtFileAsString {
NSMutableDictionary *result = [NSMutableDictionary dictionary];
NSArray *lines = [myTxtFileAsString componentsSeparatedByString:@"\n"];
for (NSString *line in lines) {
NSArray *pair = [line componentsSeparatedByString:@" = "];
NSString *key = [pair objectAtIndex:0];
NSString *value = [pair objectAtIndex:1];
[result setObject:value forKey:key];
}
return result;
}
NSString 参考有一个名为“查找字符和子字符串”的完整子标题。
– rangeOfCharacterFromSet:
– rangeOfCharacterFromSet:options:
– rangeOfCharacterFromSet:options:range:
– rangeOfString:
– rangeOfString:options:
– rangeOfString:options:range:
– rangeOfString:options:range:locale:
– enumerateLinesUsingBlock:
– enumerateSubstringsInRange:options:usingBlock:
正则表达式可能会使这变得容易得多。查看此答案:Objective-C Cocoa 应用程序中的正则表达式