我正在尝试重新制作我在 OBJ-C 中用 C# 制作的程序。在 C# 中,我使用 streamreader 在数据文件中搜索我正在寻找的行,然后将该行转换为我可以使用的字符串。
我看过 NSScanner 但我不确定这是否是我正在寻找的东西,但我绝不是可可专家。
我想要做的就是让它在数据文件中搜索字符串的出现,然后当/如果它发现该字符串的出现,它返回找到该字符串的行作为字符串。
有任何想法吗?
我正在尝试重新制作我在 OBJ-C 中用 C# 制作的程序。在 C# 中,我使用 streamreader 在数据文件中搜索我正在寻找的行,然后将该行转换为我可以使用的字符串。
我看过 NSScanner 但我不确定这是否是我正在寻找的东西,但我绝不是可可专家。
我想要做的就是让它在数据文件中搜索字符串的出现,然后当/如果它发现该字符串的出现,它返回找到该字符串的行作为字符串。
有任何想法吗?
如果您的数据文件不是太大而无法放入内存,您可以将其加载到字符串中并使用字符串方法进行搜索。例如:
NSData *data = [NSData dataWithContentsOfFile:@"/path/to/file.dat"];
NSString *dataString = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];
for (NSString *line in [dataString componentsSeparatedByString:@"\n"])
if (!NSEqualRanges([line rangeOfString:searchString], NSMakeRange(NSNotFound,0)))
return line;