从HTTP POST响应中解析和显示XML

时间:2013-12-18 00:43:05

标签: ios xml parsing http-post

这是我上一个问题的延续;

Parse/Display XML from a POST Method

它有效,但答案没有说的是如何将解析后的xml显示在按钮上,就像我想要的那样。

我有一个HTTP POST方法,可以调用用户的Lat& Lon可以对他们所在的郊区做出回应,并且发布并收到很好的信息,我只是向标签显示XML响应以查看它是否有效,但是,我想在按钮上显示已解析的XML,特别是只有响应给出的一个类别。

这是我的代码

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {

element = elementName;

if ([element isEqualToString:@"geocode"]) {

    geocode    = [[NSMutableDictionary alloc] init];
    state   = [[NSMutableString alloc] init];
    suburb    = [[NSMutableString alloc] init];
}}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {

if ([element isEqualToString:@"state"]) {
    [state appendString:string];
} else if ([element isEqualToString:@"suburb"]) {
    [suburb appendString:string];
}}
  - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
if ([elementName isEqualToString:@"geocode"]) {
    [geocode setObject:state forKey:@"state"];
    [geocode setObject:suburb forKey:@"suburb"];
}}

我使用解析器的这一部分

parser = [[NSXMLParser alloc] initWithData:urlData];
           [parser setDelegate:self];
           [parser setShouldResolveExternalEntities:NO];
           [parser parse];

1 个答案:

答案 0 :(得分:0)

解析XML时,在数组或变量中插入响应对象。接下来,显示变量或数组中包含的信息。