使用文件内容解析NSData

时间:2014-05-12 11:02:03

标签: ios file parsing nsdata

我正在从网页上检索一些包含我想要解析的特定格式数据的文件。但是我只知道如何从网络上获取文件:

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
}

有什么建议吗?

1 个答案:

答案 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
    }
}