显示计算机目录和文件得tree是如何实现得,最好有源代码 搜索关键字:tree找到一大堆 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 部分代码如下(仅供参考): DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("My Computer"); addLocoalRoots(rootNode, true); jTreeFile = new JTree(rootNode, true); public void addLocoalRoots(DefaultMutableTreeNode rootNode) { DefaultMutableTreeNode fatherNode = null; DefaultMutableTreeNode childrenNode = null; File[] roots = File.listRoots(); for (int i = 0; i < roots.length; i++) { System.out.println(roots[i]); if(roots[i].isDirectory() ){ fatherNode = new DefaultMutableTreeNode(roots[i], true); rootNode.add(fatherNode); }else{ // deal with movable disk fatherNode = new DefaultMutableTreeNode(roots[i], true); rootNode.add(fatherNode); } } } public void addChildrenNodes(DefaultMutableTreeNode fatherNode, String strAbsolutePath) { DefaultMutableTreeNode childrenNode = null; File dir = new File( strAbsolutePath ); if ( ! dir.isDirectory() ) { fatherNode.setAllowsChildren(false); return; } File[] subDir = dir.listFiles(); // add directories for (int i = 0; i < subDir.length; i++) { if( subDir[i].isDirectory() ){ childrenNode = new DefaultMutableTreeNode(subDir[i].getName(), true); fatherNode.add(childrenNode); subDir[i] = null; } } // add others for (int i = 0; i < subDir.length; i++) { if( subDir[i] == null ){ continue; } childrenNode = new DefaultMutableTreeNode(subDir[i].getName(), false); fatherNode.add(childrenNode); } } void jTreeFile_treeWillExpand(TreeExpansionEvent e) throws ExpandVetoException { DefaultMutableTreeNode node = (DefaultMutableTreeNode) (e.getPath().getLastPathComponent()); if (node == null) return; if ( node.isRoot() ) return; System.out.println("jTreeFile_treeWillExpand(TreeExpansionEvent): " + node.toString()); addChildrenNodes(node, getAbsolutePath(e.getPath())); } 求高人指点迷津 MyEclipse 项目错误 {1} 问个 字符串 检索的问题 readline如何读取一段的内容,读到换行的时候停止。非常谢谢专家指导,急急!! 急99999999999999999 局域网中的Socket不能连接。后续 ps:怎么才能在防火墙开着的情况下通信?? 关于后台处理程序! 那里有适合新手入门的JAVA教程下載? IO输出的行号问题!!!望大家帮忙解决! JTextPane难题 数据库出错 java能不能像c,c++那样开发硬件?
addLocoalRoots(rootNode, true);
jTreeFile = new JTree(rootNode, true); public void addLocoalRoots(DefaultMutableTreeNode rootNode) { DefaultMutableTreeNode fatherNode = null;
DefaultMutableTreeNode childrenNode = null; File[] roots = File.listRoots(); for (int i = 0; i < roots.length; i++) {
System.out.println(roots[i]);
if(roots[i].isDirectory() ){
fatherNode = new DefaultMutableTreeNode(roots[i], true);
rootNode.add(fatherNode);
}else{
// deal with movable disk
fatherNode = new DefaultMutableTreeNode(roots[i], true);
rootNode.add(fatherNode);
} }
}
public void addChildrenNodes(DefaultMutableTreeNode fatherNode, String strAbsolutePath) {
DefaultMutableTreeNode childrenNode = null;
File dir = new File( strAbsolutePath );
if ( ! dir.isDirectory() ) {
fatherNode.setAllowsChildren(false);
return;
}
File[] subDir = dir.listFiles(); // add directories
for (int i = 0; i < subDir.length; i++) {
if( subDir[i].isDirectory() ){
childrenNode = new DefaultMutableTreeNode(subDir[i].getName(), true);
fatherNode.add(childrenNode);
subDir[i] = null;
}
} // add others
for (int i = 0; i < subDir.length; i++) {
if( subDir[i] == null ){
continue;
}
childrenNode = new DefaultMutableTreeNode(subDir[i].getName(), false);
fatherNode.add(childrenNode);
} } void jTreeFile_treeWillExpand(TreeExpansionEvent e) throws ExpandVetoException { DefaultMutableTreeNode node =
(DefaultMutableTreeNode) (e.getPath().getLastPathComponent());
if (node == null) return;
if ( node.isRoot() ) return;
System.out.println("jTreeFile_treeWillExpand(TreeExpansionEvent): " + node.toString());
addChildrenNodes(node, getAbsolutePath(e.getPath())); }