34
}
35
36
if ( ! [[NSFileManager defaultManager] fileExistsAtPath:destPath]) {
37
if ( ! [[NSFileManager defaultManager] createFileAtPath:destPath contents:nil
attributes:nil]){
38
return NO;
39
}
40
}
41
42
NSData *xmlData = [xmlDoucment XMLDataWithOptions:NSXMLNodePrettyPrint];
43
if (![xmlData writeToFile:destPath atomically:YES]) {
44
NSLog(@"Could not write document out...");
45
return NO;
46
}
47
48
return YES;
49
}
4. 生成 CData 节点
50
- (NSXMLNode *)generateCDataNode:(NSString *)value {
51
<span style="white-space:pre"> </span>NSXMLNode *cdataNode = [[NSXMLNode
alloc] initWithKind:NSXMLTextKind options:NSXMLNodeIsCDATA];
52
<span style="white-space:pre"> </span>[cdataNode setStringValue:value];
53
<span style="white-space:pre"> </span>
54
<span style="white-space:pre"> </span>return [cdataNode autorelease];
55
}
可以像下面这样使用:
56
NSXMLElement *urlNode = [NSXMLElement elementWithName:@"Setting"];
57
NSXMLNode *cdataNode = [self generateCDataNode:dmgFileName];
58
[urlNode addAttribute:[NSXMLNode attributeWithName:@"name"
stringValue:name]];
59
[urlNode addAttribute:[NSXMLNode attributeWithName:@"type" stringValue:type]];
60
[urlNode addChild:cdataNode];
生成的
Xml 节点如下:
61
<Setting
name
=
"OutputFileName"
type
=
"string"
>
<![CDATA[mac-data-
recovery_full737.dmg]]>
</Sett