utilizzando variabili in XPath query..is possibile?
Domanda
Potrebbe qualcuno dirmi come possiamo usare la funzione di testo con variabile nella query XPath in c-obiettivo per iPhone. Avevo bisogno di informazioni per l'Ingegneria biblioteca presente nel 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];
o un'altra variante
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];
Se questo metodo non è giusto, potrebbe qualcuno dirmi come per andare a prendere i dati per Engineering Library. Non voglio usare direttamente la parola, ma voglio usarlo attraverso una variabile.
Grazie
Soluzione
Potrebbe essere più facile per costruire la stringa utilizzando [NSString stringWithFormat: @ "// LibraryName [text () = '% @'] /../ Ore / TermOrHolidays", someVariable]
Poi, finché la query XPath è bene che funzionerà.
Altri suggerimenti
come sull'utilizzo di questa XPath:
//Library[@name='Engineering Library']/Hours/TermOrHolidays
o questa:
//Library[LibraryName='Engineering Library']/Hours/TermOrHolidays