我有一个循环,通过它的HTML标识网页的元素并提取我需要的部分。我想要构建一个数组或者(非常)长的提取文本字符串,以便以后使用。将_CFNSString传递到NSString中
提取使用来自GitHub的TFHpple。问题似乎在于提取的文本是_CFNSString,而这些不允许我将它们转换为NSString或NSMutuableArray。
我正在使用的代码是:
NSArray *webNodes = [webParser searchWithXPathQuery:tutorialsXpathQueryString];
NSString *extractedText = [[NSString alloc] init];
NSMutableArray *extractedArray = [[NSMutableArray alloc] initWithCapacity:0];
for (TFHppleElement *element in webNodes) {
Extraction *extraction = [[Extraction alloc] init];
[extractedArray addObject:extraction];
extraction.title = [[element firstChild] content];
extractedText = extraction.title;
NSLog(@"\n\nTitle: %@", extractedText);
}
的NSLog的在这一点上显示我extractedText着每个循环之后,我,打破了代码显示extractedText是一个_CFNSString。
如果我尝试添加
text = [text StringByAppendingString extractedText];
(与“文”是在循环之前初始化一个NSString)作为循环的最后一步,我得到一个空值。如果我尝试将文本或extract.title直接添加到数组中,它也是一样。
我发现这个问题Convert NSCFString to NSString但转换似乎是以另一种方式(NSString到CFNSString)。当我添加等效代码时,出现桥接错误,代码无法运行。
如何收集extract.title中的数据以构建可以稍后使用的字符串或数组?
什么是'text'摆在首位?问题可能是'text'在那个点上是'nil',产生'nil'结果(记住objc中允许'nil'的消息) – Alladinian