可以告诉我,我们如何使用iPhone的C-Objective中XPath查询中的变量使用文本函数。我需要XML中存在的工程库的信息

http://www.sis.pitt.edu/~arazeez/librarydata.xml

NSString *libName = @"Engineering Library";
    NSMutableString  *xpathquery = [[NSMutableString alloc] init];
    [xpathquery appendString:@"//Library[LibraryName/text() = '"];
    [xpathquery appendString:libName];
    [xpathquery appendString:@"']/../Hours/TermOrHolidays"];
    resultNodes = [rssParser nodesForXPath:xpathquery error:nil];

或另一个变体

NSString *string1 = @"//LibraryName[text() = '"; 
NSString *string2 = @"']/../Hours/TermOrHolidays"; 
NSString *newString; NSString *newString1; 
newString = [string1 stringByAppendingString:libName]; 
newString1 = [newString stringByAppendingString:string2]; 
NSLog(newString1);
 //correct one below //resultNodes = [rssParser nodesForXPath:@"//LibraryName[text()= 'Engineering Library']/../Hours/TermOrHolidays" error:nil]; 

resultNodes = [rssParser nodeForXPath:newString1 error:nil];

如果此方法不正确,可以告诉我如何为工程库获取数据。我不想直接使用该单词,而是想通过变量使用它。

谢谢

有帮助吗?

解决方案

使用[nsstring stringwithFormat:@“ // libraryName [text()='%@'] /../ houth/primorholidays“/tirsorholidays”,Somevariable

然后,只要Xpath查询还可以,它就会起作用。

其他提示

如何使用此XPath:

//Library[@name='Engineering Library']/Hours/TermOrHolidays

或这个:

//Library[LibraryName='Engineering Library']/Hours/TermOrHolidays
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top