给定一个起始路径,我想创建一个类似于使用Java表示文件系统的对象的树,将所有文件夹显示为x级而不是普通文件。。所以使用 FileVisitor 我知道每次在我要浏览一个新的子文件夹之前,将调用 preVisitDirectory()方法并且一旦它完成解析所有它的子项 postVisitDirectory()将被调用,但我的问题是知道如何将此目录附加到其父目录。
即在我的情况下,我想使用ul / li / ul / li元素为jstree创建数据,并使用j2html lib执行此操作。所以使用ul()创建root,然后当我进入preVisitDirectory()时,我会创建一个li()元素,并且在postVisitDirectory()中想要使用ul()。(li)附加到ul()但是我看不到如何跟踪我在构建树的位置。
例如静态硬编码示例实际上不是浏览树
public Tag createBrowseTreeAsHtml()
{
Tag ulTag = ul(
li("ChildNode 2").withId("child_node_1"),
li("ChildNode")
);
Tag divTag= div(
ul(
li("Root Node 1").with(ulTag),
li("Root Node 2")
)
)
.withId("jstree");
return div().with(divTag);
}
我看到Guava支持Graphs,我应该以某种方式使用它吗?