我有一个像 /Test/Demo1/Demo2/Demo3/demo.mp4 这样的文件列表,并希望在Objective-C中创建XML文档。我有一个make NSMutableDictionary的代码:
-(NSMutableDictionary *)addFile:(NSString *)path toTree:(NSMutableDictionary *)tree {
NSMutableDictionary *node = tree;
NSArray *components = [path componentsSeparatedByString:@"/"];
for (NSUInteger i = 0; i < [components count] - 1; i++) {
NSString *key = components[i];
if (node[key] == nil) {
node[key] = [NSMutableDictionary dictionary];
}
node = node[key];
}
NSString *name = [components lastObject];
if ([name length] > 0) {
node[name] = [NSMutableDictionary dictionary];
node = node[name];
}
return node;
}
但我没有好结果。建议我如何将文件列表转换为NSMutableArray或NSXMLDocument。
谢谢
答案 0 :(得分:0)
Tree-Based XML Programming Guide中有一些例子。 检查&#34;创建新的XML文档&#34;之后&#34;从现有XML创建文档对象&#34;以及#34;写出XML文档&#34;它显示了如何将其转换为NSData(可以写入文件或转换为NSString)。
如果要创建符合标准的标准XML文件,则需要此XML API。
或者,您可以使用NSMutableString手动构建字符串。 One example of that from the internet使用与您不同的结构,但您应该能够理解。
在构建文件和目录树之后,可以使用Depth-first search之类的算法遍历它,并沿途构建NSXMLDocument或NSMutableString。