我有一個XML文件,其註釋的文件底部有一個ID,我成功將NSLog「輸出」到控制檯。我使用NSXMLParser通過foundComment方法查找評論。然後在底部有一個GetUID方法,我想返回我的uid字符串。我不知道如何訪問我的分析數據,並在另一個單獨的方法中使用它。任何幫助將不勝感激。如何訪問分析的XML數據並在其他方法中使用它?
XML文件:
<audioTracks>0</audioTracks>
<!--7934fad5a3a -->
XMLParser.h
#import <Foundation/Foundation.h>
@interface MyXmlParserDelegate : NSObject <NSXMLParserDelegate>
@end
XMLParser.mm
#import "XMLParser.h"
@implementation MyXmlParserDelegate
- (void) parserDidStartDocument:(NSXMLParser *)parser {
}
- (void)parser:(NSXMLParser *)parser
foundComment:(NSString *)uid{
NSLog(@"UID: %@", uid);
}
- (void) parserDidEndDocument:(NSXMLParser *)parser {
}
@end
MAIN.mm
-(NSString *)GetUID {
NSString * uid = nil;
NSXMLParser *parser = [[NSXMLParser alloc] initWithData:MyData];
MyXmlParserDelegate *parserDelegate = [[MyXmlParserDelegate alloc] init];
[parser setDelegate:parserDelegate];
[parser parse];
return uid;
}
我試圖做你說的,但在行上返回parse.uid它會拋出一個錯誤,說「在對象類型NSXMLParser找不到的屬性uid」 – Nick
我很抱歉,我很新的Objective-C。我覺得從另一種方法調用字符串不應該很難。這個錯誤對我來說仍然是一個殘缺。 – Nick
這是我應該對不起。我建議的代碼包含錯誤。請參閱編輯。解析委託包含新屬性,而不是解析器。 – danh