0

我有一个像/Test/Demo1/Demo2/Demo3/demo.mp4这样的文件列表,并且想在 Objective-C 中制作 XML 文档。我有一个制作 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。

谢谢

4

1 回答 1

0

Tree-Based XML Programming Guide中有一些示例。在“从现有 XML 创建文档对象”和“写出 XML 文档”之后检查“创建新的 XML 文档”,显示如何将其转换为 NSData(可以写入文件或转换为 NSString)。

还有一篇带示例的文章。

如果您要创建形式上符合标准的 XML 文件,则需要此 XML API。

或者,您可以使用 NSMutableString 手动构建字符串。互联网上的一个例子与你的结构不同,但你应该能够理解这个想法。

构建文件和目录树后,您可以使用深度优先搜索之类的算法对其进行遍历,并在此过程中构建您的 NSXMLDocument 或 NSMutableString。

于 2018-05-15T21:29:03.813 回答