快速业务通道

java写的文件浏览器 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20

java写的文件浏览器

时间:2011-01-18

//------------------------------------------------------------ // 编译下边的类,并运行无需任何参数 //----------------------------------------------------------- package com.swing.tree; import java.io.*; import java.util.*; import javax.swing.tree.*; public class file_path_obj { private String dir_tree=""; private File temp; DefaultMutableTreeNode root=null; public DefaultMutableTreeNode getPath_Obj() { if(this.root==null) return new DefaultMutableTreeNode("null NODE"); return this.root; } public file_path_obj(String path) { try{ root= this.set(path); }catch(Exception e) { System.out.println("tree error:\n+++++++++++++++++++++++++++++++++"); e.printStackTrace(); }} public DefaultMutableTreeNode set(String dir) throws Exception //第归遍历文件甲 { File[] temp_list = null; if(new File(dir).exists()==false) throw new Exception("file name is null"); DefaultMutableTreeNode tempNode; temp = new File(dir); if(temp.isFile()) { return new DefaultMutableTreeNode(temp.getAbsolutePath()); } temp_list = temp.listFiles(); tempNode = new DefaultMutableTreeNode(temp.getAbsolutePath()); //设置上级菜单的名字 if(temp_list.length==0) return new DefaultMutableTreeNode(temp.getAbsolutePath()); for(int i=0;i<temp_list.length;i++) { if(temp_list[i].isDirectory()) { System.out.println("the file is:"+temp_list[i].getAbsolutePath()); tempNode.add(this.set(temp_list[i].getAbsolutePath())); } else tempNode.add(new DefaultMutableTreeNode(temp_list[i].getAbsolutePath())); } return tempNode; } } //------------------------------------------------------------ // 编译下边的类,并运行无需任何参数 //----------------------------------------------------------- package com.tree; import java.io.*; import java.awt.*; import javax.swing.*; import javax.swing.tree.*; import com.swing.tree.*; /** Example tree built out of DefaultMutableTreeNodes. * ycj */ public class pathTree extends JFrame { public static void main(String[] args) { try { BufferedReader bin = null; bin = new java.io.BufferedReader(new InputStreamReader(System.in)); String path=""; File temp = null; System.out.print("输入要显示的文件路径"); while(bin!=null) { path = bin.readLine(); if(path==null) { System.out.println("请输入合法的文件路径"); continue; } temp = new File(path); if(temp.exists()==false||temp.isFile()) System.out.println("请输入正确的文件路径"); else {new pathTree(path); break; } } }catch(Exception e) { e.printStackTrace(); } } public pathTree(String path) { super("Creating a Simple JTree"); WindowUtilities.setNativeLookAndFeel();//set the UIManager addWindowListener(new ExitListener()); Container content = getContentPane(); file_path_obj obj = new file_path_obj(path); System.out.println(obj.getPath_Obj()); JTree tree = new JTree(obj.getPath_Obj());//MAKE A TREE Cursor cor = new Cursor(Cursor.HAND_CURSOR); tree.setCursor(cor); content.setLayout(new FlowLayout()); JPanel jp1 = new JPanel(new BorderLayout()); JPanel jp2 = new JPanel(new BorderLayout()); content.add(jp1); content.add(jp2); content.add(new JScrollPane(tree), BorderLayout.CENTER); setSize(275, 500); setVisible(true); this.pack(); } }

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号