我正在开发一个项目,我想创建一系列文件夹,其结构和名称与我创建的JTree类似。
简化:
如果A是根节点而B和C是其子节点,则在后端,在“C:\ Users \ Sami \ Desktop”位置创建名为“A”的文件夹,然后创建B和C在“C:\ Users \ Sami \ Desktop \ A”
我猜测如果我遍历每个节点并获得他们各自的TreePath,它会让事情变得更容易。
我还有其他选择吗?如果不是我如何以及在何处存储特定节点的路径?
请帮助。
答案 0 :(得分:0)
以下代码是SSCCE(简短的自包含正确示例)。它遍历树中的所有节点,并以String形式获取路径。从那里你可以解析字符串到你的目的。
import java.util.Enumeration;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
public class StoreTreePathExample {
public static void main(String[] args){
JTree tree = new JTree();
Enumeration en = ((DefaultMutableTreeNode)tree.getModel().getRoot()).preorderEnumeration();
while(en.hasMoreElements()){
TreePath path = new TreePath( ((DefaultMutableTreeNode)en.nextElement()).getPath() );
String text = path.toString();
System.out.println(text);
}
}
}