iPhone開発には初めてです。私は2つのXMLタグには同じ名前があります。この2つのタグを区別する方法。最初のタグがいつ閉じられるかを特定する方法を意味します。ns xmlパーサーを使用してiPhoneで同名の2つのXmlタグを区別する方法
<data>
<level>0</level>
<type>video</type>
<file>file_CTcE96nTfP3sXIQ8.wmv</file>
<position>0,0,640,360</position>
<duration>121</duration>
</data>
<data>
<level>0</level>
<type>image</type>
<file>file_CTNJ1da7ntcTGmxd.jpg</file>
<position>640,0,1024,360</position>
<duration>121</duration>
</data>
<data>
<level>0</level>
<type>image</type>
<file>file_CTAo1yLWaZqXkpic.png</file>
<position>0,360,337,480</position>
<duration>121</duration>
</data>
私はこれらのメソッドを実装しています。ここ
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {
if ([elementName isEqualToString:@"data"]) {
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
???
}
は、3個のデータタグがそこにあります。私はすべてのデータタグを3つの配列に入れたいと思う。どのように私はthat.iを達成することができます次にdidEndElement
if ([elementName isEqualToString:@"data"]) {
[data setObject:type forKey:@"type"];
[data setObject:position forKey:@"position"];
[data setObject:duration forKey:@"duration"];
[dataList addObject:data];
}
にUがfoundCharactersにデリゲートメソッドを追加し、に値を割り当てる必要がdidStartElement
if ([elementName isEqualToString:@"data"]) {
data = [[NSMutableDictionary alloc] init];
level = [NSMutableString alloc] init];
type = [NSMutableString alloc] init];
position = [NSMutableString alloc] init];
duration = [NSMutableString alloc] init];
}
でこの
data1(file,type,position,duration)
data2(file,type,position,duration)
data3(file,type,position,duration)
以前にNSXMLParserを試してみましたか? –
1つのデータだけを解析できますか? – Hanon
@KAREEM MAHAMMEDいいえ私はiPhoneを初めて使っています。 –