IOS:如何读取XML列表中的特定数据

IOS:如何读取XML列表中的特定数据,ios,xml,parsing,Ios,Xml,Parsing,当我在iPhone应用程序中使用NSXMLParser解析XML时,我知道如何在如下场景中进行解析: > <title>L3178 : Freiensteinau Richtung Grebenhain</title> // From XML L3178:Freiensteinau Richtung Grebenhain//来自XML 但是,如果我想从列表中提取数据,例如,我想从id>中获取lat和lon,我应该如何处理 id> 14D8CF692999&lon

当我在iPhone应用程序中使用NSXMLParser解析XML时,我知道如何在如下场景中进行解析:

> <title>L3178 : Freiensteinau Richtung Grebenhain</title> // From XML
L3178:Freiensteinau Richtung Grebenhain//来自XML 但是,如果我想从列表中提取数据,例如,我想从id>中获取lat和lon,我应该如何处理

id> 14D8CF692999&lon=9.3495&lat=50.49465&country=DE&filter=0&expires=2013-12-20T03:13:00 /id>

很奇怪,如果我用id>代替,它会消失。所以,我不得不使用这个丑陋的符号


提前谢谢你

创建一个从URL字符串中提取参数的方法

- (NSDictionary *)paramsFromURLString:(NSString *)urlString
{
    NSRange range = [urlString rangeOfString:@"?"];
    NSString *subString = [urlString substringFromIndex:range.location+range.length];

    NSArray *components = [subString componentsSeparatedByString:@"&"];

    NSMutableDictionary *params = [NSMutableDictionary dictionary];
    for (NSString *string in components) {
        NSRange subRange = [string rangeOfString:@"="];
        NSString *key = [string substringToIndex:subRange.location];
        NSString *value = [string substringFromIndex:subRange.location+subRange.length];

        [params setObject:value forKey:key];

    }
    return params;
}
从参数中找到lat和lon

NSString *urlString = @"http://www.freiefahrt.info/?id=468B0243-E15C-4580-9AD2 14D8CF692999&lon=9.3495&lat=50.49465&country=DE&filter=0&expires=2013-12-20T03:13:00";
NSDictionary *params = [self paramsFromURLString:urlString];

NSString *latitude = params[@"lat"];
NSString *longitude = params[@"lon"];