一个简单的统计文件夹下文件或目录的程序

写这个原因是有时,用的Jar包太多,想统计下lib文件夹下所有的文件

用法:在转到前的框中输入要找文件名的目录,之后点转到就能找到里面包含的所有文件:如图


代码:

import java.awt.*;
import java.awt.event.*;
import java.io.*;

class MyWindowDemo 
{
	private Frame f;
	private TextField tf;
	private Button but;
	private Button outBut;
	private TextArea ta;

	private Dialog d;//为了方便阅读程序.
	private Label lab;
	private Button okBut;

	private FileDialog fd;

	MyWindowDemo()
	{
		init();
	}

	public void init()
	{
		f = new Frame("my window");
		f.setBounds(300,100,600,500);
		f.setLayout(new FlowLayout());

		tf = new TextField(60);

		but = new Button("转到");
		outBut = new Button("导出");

		ta = new TextArea(25,73);

		d = new Dialog(f,"提示信息-self",true);
		d.setBounds(400,200,240,150);
		d.setLayout(new FlowLayout());
		lab = new Label();
		okBut = new Button("确定");

		fd = new FileDialog(f, "导出");

		d.add(lab);
		d.add(okBut);


		f.add(tf);
		f.add(but);
		f.add(outBut);
		f.add(ta);

		myEvent();
		f.setVisible(true);
	}
	private void myEvent()
	{
		outBut.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				fd.setVisible(true);
			}
		});

		okBut.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				d.setVisible(false);
			}
		});

		d.addWindowListener(new WindowAdapter()
		{
			public void windowClosing(WindowEvent e)
			{
				d.setVisible(false);
			}
		});

		tf.addKeyListener(new KeyAdapter()
		{
			public void keyPressed(KeyEvent e)
			{
				if(e.getKeyCode()==KeyEvent.VK_ENTER)
					showDir();
			}
		});

		but.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				showDir();	
			}
		});

		f.addWindowListener(new WindowAdapter()
		{
			public void windowClosing(WindowEvent e)
			{
				System.exit(0);
			}
		});
	}
	
	public void outDir()
	{
		
	}

	public void showDir()
	{
		String dirPath = tf.getText();

		File dir = new File(dirPath);

		if(dir.exists() && dir.isDirectory())
		{
			ta.setText("");
			String[] names = dir.list();
			for(String name : names)
			{
				ta.append(name+"\r\n");
			}
		}
		else
		{
			String info = "您输入的信息:"+dirPath+"是错误的,请重输";
			lab.setText(info);
			d.setVisible(true);
		}	
	}


	public static void main(String[] args) 
	{
		new MyWindowDemo();
	}
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值