Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 实现具有带有级别号的有序列表的xml层次结构_Java_Xml - Fatal编程技术网

Java 实现具有带有级别号的有序列表的xml层次结构

Java 实现具有带有级别号的有序列表的xml层次结构,java,xml,Java,Xml,我有一个数字列表,它表示xml树中的级别。 例如,我有以下列表: 0, 1, 2, 2, 1 带有“lev”元素的xml需要: <lev> <lev> <lev> </lev> <lev> </lev> </lev> <lev> </lev> </lev> 如果我们在列表中有一个numberlevel x,在

我有一个数字列表,它表示xml树中的级别。 例如,我有以下列表:

 0, 1, 2, 2, 1
带有“lev”元素的xml需要:

<lev>
  <lev>     
    <lev>
    </lev> 
    <lev>
    </lev>  
  </lev>
  <lev>
  </lev>
</lev>

如果我们在列表中有一个numberlevel x,在它之后我们有一个numberlevel y,其中y递归对于这个是过分的。此外,不需要位置值。这里有一个伪代码解决方案

假设函数next返回下一个输入值,或EOF为零

curLevel = 0
n        = next();
do 
{
  while(curLevel <= n)
  {
    open tag
    ++curLevel
  }
  n = next();
  while(curLevel > n)
  {
    --curLevel
    close tag
  }
}
while(curLevel > 0)

请注意,空输入文件的角盒将生成一个打开/关闭对。用不同的方法检查EOF,如果不需要,修改代码以处理它。

?如果没有,请详细描述一下这是在什么上下文中使用的。数字总是从零开始,单调上升到最大值,然后又回到1吗?可以说从2跳到5吗?这不是家庭作业。我最初想举一个例子说明我做了什么,但我认为会更让人困惑。。。列表中的第一个数字始终为0,是的,我们可以有2个,也可以有5个以上。请回答我的问题,并可能提供更多示例-您的问题目前尚未完全指定。确定。希望有人会提供一个答案-我需要做一些工作一点。在你的扩展问题中,你似乎大部分都是自己回答的,不过…注意没有人想要。。。如果你有时间,请提出一些想法。。
curLevel = 0
n        = next();
do 
{
  while(curLevel <= n)
  {
    open tag
    ++curLevel
  }
  n = next();
  while(curLevel > n)
  {
    --curLevel
    close tag
  }
}
while(curLevel > 0)