我正在从网页上检索一些包含我想要解析的特定格式数据的文件。但是我只知道如何从网络上获取文件:
dispatch_async(server_queue, ^{
NSData* data = [NSData dataWithContentsOfURL:
kURL];
[self performSelectorOnMainThread:@selector(parseData:)
withObject:data waitUntilDone:YES];
});
在parse方法中,我想对文件的每一行进行标记,但我不确定如何从NSData对象中提取行。
-(void)parseData:(NSData *)responseData {
//tokenize each line of responseData
}
有什么建议吗?
答案 0 :(得分:1)
NSData不是一种可以解析它的格式。只需将其转换为NSString,如下所示:
-(void)parseData:(NSData *)responseData
{
NSString *stringFromData = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
NSArray *eachLineOfString = [stringFromData componentsSeparatedByString:@"\n"];
for (NSString *line in eachLineOfString) {
// DO SOMETHING WITH THIS LINE
}
}