追記(2008/12/14):名前空間についてはこちら.
基本はおそらくこれ.
NSXMLDocument* document= [NSXMLNode document];
NSXMLElement* root= [NSXMLNode elementWithName:@"root"];
[document setRootElement:root];
NSString* output= [document XMLString];
出力はこう.
<root></root>
XMLのバージョン追加はこう?
[document setVersion:@"1.0"];
DOCTYPEの宣言はこう.
NSXMLDTD* dtd= [[[NSXMLDTD alloc] init] autorelease];
[dtd setPublicID:@"__URL__"]; //SYSTEMの場合はsetSystemID:
[document setDTD:dtd];
コメントはこう?
[document addChild:[NSXMLNode commentWithStringValue:@"__Comment_String__"]];
子要素の追加はこう?
NSXMLElement* child= [NSXMLNode elementWithName:@"child"];
[root addChild:child];
属性の追加はこう?
[child addAttribute:[NSXMLNode attributeWithName:@"attrKey" stringValue:@"attrVal"]];'addChild:'じゃないよ.
以上をまとめるとこう.
NSXMLDocument* document= [NSXMLNode document];
[document setVersion:@"1.0"];
NSXMLDTD* dtd= [[[NSXMLDTD alloc] init] autorelease];
[dtd setPublicID:@"__URL__"];
[document setDTD:dtd];
[document addChild:[NSXMLNode commentWithStringValue:@"__Comment_String__"]];
NSXMLElement* root= [NSXMLNode elementWithName:@"root"];
[document setRootElement:root];
NSXMLElement* child= [NSXMLNode elementWithName:@"child"];
[root addChild:child];
[child addAttribute:[NSXMLNode attributeWithName:@"attrKey" stringValue:@"attrVal"]];
NSString* output= [document XMLString];
NSLog(@"%@", output);
出力はこう.
<?xml version="1.0"?>
<!DOCTYPE PUBLIC "__URL__">
<!--__Comment_String__--><root><child attrKey="attrVal"></child></root>
出力を見やすく整形して出力するにはこう?
NSString* output= [document XMLStringWithOptions:NSXMLNodePrettyPrint];
出力はこう.
<?xml version="1.0"?>
<!DOCTYPE PUBLIC "__URL__">
<!--__Comment_String__-->
<root>
<child attrKey="attrVal"></child>
</root>
子要素の無い要素を<name/>で表現するのはこう?
NSString* output= [document XMLStringWithOptions:NSXMLNodeCompactEmptyElement];
出力はこう.
<?xml version="1.0"?>
<!DOCTYPE PUBLIC "__URL__">
<!--__Comment_String__--><root><child attrKey="attrVal"/></root>
同時に指定するにはこう?
NSString* output= [document XMLStringWithOptions:(NSXMLNodePrettyPrint|NSXMLNodeCompactEmptyElement)];
出力はこう.
<?xml version="1.0"?>
<!DOCTYPE PUBLIC "__URL__">
<!--__Comment_String__-->
<root>
<child attrKey="attrVal"/>
</root>
あってる?
0 件のコメント:
コメントを投稿