2012-02-22 12 views
0

私は本当に単純なXML本体を返すことになりましたが、誤ってどこにも格納せずに文字列に解析したいと思います。これはとても簡単なケースなので、これを解析するにはどうすればよいでしょうか?XMLのパスワードの解析(dbに格納/キャッシングなし)

<user> 
    <password> holla </password> 
</user> 

ありがとうございました!

答えて

1

NSURLConnectionオブジェクトとNSXMLParserオブジェクトが必要です。あなたはすでにそれを知っていると確信しています。

どこかにNSString * tempStringがあるとします。 NSXMLParserのために

、ここにあなたが実装する必要がある方法:

// When the start of an element is found 
- (void) parser:(NSXMLParser *)parser 
didStartElement:(NSString *)elementName 
    namespaceURI:(NSString *)namespaceURI 
    qualifiedName:(NSString *)qName 
    attributes:(NSDictionary *)attributeDict 
{ 
    if([elementName isEqualToString:@"password"]) 
    { 
     // initialize your string 
     tempString = [NSString alloc] init]; 
    } 
} 

// When the text in an element is found 
- (void) parser:(NSXMLParser *) parser 
foundCharacters:(NSString *)string 
{ 
    // use the value of the string(password) to initialize your string 
    tempString = string; 
} 

// When the end of element is found 
- (void) parser:(NSXMLParser *) parser 
    didEndElement:(NSString *)elementName 
    namespaceURI:(NSString *)namespaceURI 
    qualifiedName:(NSString *)qName 
{ 
    // whatever work left to do with the xml parsing 
    // use know you get the password string, so do whatever you want after that 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Got the password!" 
                message:@"" 
                delegate:nil 
              cancelButtonTitle:@"OK" 
              otherButtonTitles:nil]; 
    [alert show]; 
    [alert release]; 
} 
+0

はい、以前はこれを使用していましたが、確認が必要です。これは単一の属性を解析する効率的な方法ですか? – Pharaon

+0

それは私の作品です。 –

0

たぶん簡単なNSXMLParserを設定することが非常に単純である可能性があります。

しかし、アプリケーション全体でXMLを解析する必要がある場合は、GDataXMLについてお読みください。ここではhow-to-read-and-write-xml-documents-with-gdataxmlのチュートリアルです。このパーサーは非常に高速で使いやすいです。

希望します。

関連する問題