到ios6的时候之前在ios5中用的库文件libxml2.2.7.7不能用了,要改成libxml2或者libxml2.2。我不知道要怎么改,可能下边这个设置就是改法了。
在项目中找到Header Search Paths,加入/usr/include/libxml2
NSString *urlString =
nil;
urlString = @"http://www.xiyou.edu.cn/new/lm.jsp?urltype=tree.TreeTempUrl&wbtreeid=724";
NSData
*htmlData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:urlString]];
NSData *toHtmlData = [self
toUTF8:htmlData];
TFHpple *xpathParser = [[TFHpple
alloc] initWithHTMLData:toHtmlData];
NSArray *aArray = [xpathParser
searchWithXPathQuery:@"//a"];
if ([span
count] > 0) {
87; i < 102; i++) {
objectAtIndex:i];
children];
objectAtIndex:0];
children];
objectAtIndex:0];
children];
objectAtIndex:0]
content];
attributes];
stringWithFormat:@"http://www.xiyou.edu.cn%@",[aAttributeDict
objectForKey:@"href"]];
addObject:aStr];
addObject:hrefStr];
[htmlData release];
[xpathParser release];
}
//如果解析的网页不是utf8编码,如gbk编码,可以先将其转换为utf8编码再对其进行解析
-(NSData *) toUTF8:(NSData *)sourceData {
CFStringRef gbkStr = CFStringCreateWithBytes(NULL, [sourceData bytes],
[sourceData length], kCFStringEncodingGB_18030_2000,
false);
NULL) {
else {
*utf8_String = [gbkString
withString:@"META http-equiv="Content-Type" content="text/html; charset=UTF-8""];
dataUsingEncoding:NSUTF8StringEncoding];
}