检测XML中的重复和循环
当以递归方式加载和解析XML文件时,我试图实现以下两个目标。 1.避免重复 2.避免循环 我的XML文件还包含其他XML文件名。我必须先加载主文件,然后在标记下解析文件名。解析完成后,我必须逐个加载和解析这些文件。在执行这些操作时,我必须递归地显示重复或循环的消息。请向我推荐解决此问题的算法/链接。保留一份您已处理的所有“内容”(您的案例中的XML文件名)的列表。然后,在处理每个项目之前,检查它是否已经在列表中,并相应地发出警告/错误检测XML中的重复和循环,xml,recursion,duplicates,Xml,Recursion,Duplicates,当以递归方式加载和解析XML文件时,我试图实现以下两个目标。 1.避免重复 2.避免循环 我的XML文件还包含其他XML文件名。我必须先加载主文件,然后在标记下解析文件名。解析完成后,我必须逐个加载和解析这些文件。在执行这些操作时,我必须递归地显示重复或循环的消息。请向我推荐解决此问题的算法/链接。保留一份您已处理的所有“内容”(您的案例中的XML文件名)的列表。然后,在处理每个项目之前,检查它是否已经在列表中,并相应地发出警告/错误 跟踪此列表的最佳方法(链表、数组、字典、哈希集等)取决于您使
跟踪此列表的最佳方法(链表、数组、字典、哈希集等)取决于您使用的编程/脚本语言以及您希望“可见项”列表包含的条目数。谢谢。我正在使用VC++字典跟踪项目。检查后,我必须显示循环的错误和重复的警告。但在检查时,两者都仅检测为重复。是否有任何方法可以找到递归项。假设您以递归方式调用加载函数本身,请将相同的字典传递到递归调用中。然后在加载“Main.xml”时,将其添加到列表中,并调用函数加载“Child.xml”。“Child.xml”在加载后被添加到列表中,如果它再次尝试加载“Main.xml”,它会看到它已经在列表中。这有意义吗?