Я использую TouchXml из-за заданных ограничений NSXML на реальном iPhone. Во всяком случае, я только начинаю с Objective-C, я из C # фона и чувствую, что изучаю что-то новое ... как-то ... вот мой XML-файл ...
<?xml version="1.0" encoding="utf-8"?>
<FundInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/webservices">
<FundsReleaseDate>2009-02-11T00:00:00</FundsReleaseDate>
<FundValue>7800</FundValue>
<FundShares>1000</FundShares>
</FundInfo>
Я пытаюсь получить 7800, т. Е. FundValue. Может кто-нибудь указать мне правильное направление, я использую TouchXml CXMLDocument и myParser имеет тип CXMLDocument, я попытался
NSArray *nodes = [myParser nodesForXPath:@"//FundInfo" error:&err];
В основном узлы оцениваются в ноль
if ([nodes count] > 0 ) {
amount = [nodes objectAtIndex:1];
}
ОБНОВЛЕНИЕ 1: я отказался от синтаксического анализа с использованием XPath и заменил его NSURLRequest, так что теперь у меня есть весь XML в строке, но мое грубое введение в target-C продолжается ... Я только что понял, насколько испорчен стать на .NET BCL, где такие вещи, как Regex так легко доступны.
ОБНОВЛЕНИЕ2: я выяснил, как использовать RegexKitLite для регулярных выражений.
Итак, вопрос в том, как мне получить "7800" из FundValue, который теперь является одной большой строкой. Я подтвердил, что у меня есть это в моей NSString, написав это, используя NSLog.