文件搜索器

系统 1540 0

这是为了熟悉文件操作而写的文件搜索器

 

 

 

1.实现文件搜索的具体实现

    package 文件搜索器;

import java.io.File;


/**
 * 指定目录下的给定关键字的文件搜索
 * 
 * @author d.s
 */
public class fileSearcher {
	

	/**
	 * 搜索方法
	 * 
	 * @param path给定的目录
	 * @param key关键字
	 */
	public void Search(String path, String key) {
		File file = new File(path);

		// 如果给的路径正确
		if (file.exists()) {

			if (file.isDirectory()) {
				if(file.getName().indexOf(key) != -1)
					//关键字在文件夹名中存在的话.
					System.out.println(file.getAbsolutePath());
				File f[] = file.listFiles();
				for(int i = 0;i<f.length;i++){
					//递归搜索.
					Search(f[i].getAbsolutePath(),key);
				}
			}
			if(file.isFile()){
				if(file.getName().indexOf(key) != -1)
					//关键字在文件名中存在的话.
					System.out.println(file.getAbsolutePath());
				
			}
		}
	}

}

  

 

 

2.界面

    package 文件搜索器;

import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

/**
 * 界面
 * @author d.s
 *
 */
public class fileSearcherUI extends JFrame{

	public static void main(String args[]){
		fileSearcherUI ui = new fileSearcherUI();
		ui.showUI();
	}
	
	public void showUI(){
		this.setTitle("fileSearcher");
		this.setSize(300,120);
		JLabel jl = new JLabel("指定目录:");
		JTextField jf = new JTextField(20);
		JLabel jl1 = new JLabel("    关键字:");
		JTextField jf1 = new JTextField(20);
		
		//添加组建
		this.add(jl);
		this.add(jf);
		this.add(jl1);
		this.add(jf1);
		
		JButton but = new JButton("搜索");
		this.add(but);
		this.setLayout(new FlowLayout());//流体式布局
		this.setLocationRelativeTo(null);//居中显示
		this.setResizable(false);//不可改变大小
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);//关闭时退出
		this.setVisible(true);//显示界面
		
		ActionListenerImpl l = new ActionListenerImpl(jf, jf1);
		but.addActionListener(l);
	}
}

  

 

 

 

3.监听器

    package 文件搜索器;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JTextField;

public class ActionListenerImpl implements ActionListener{
	private JTextField jf;
	private JTextField jf1;

	//获取文件指定的路径和关键字
	public ActionListenerImpl(JTextField jf, JTextField jf1){
		this.jf = jf;
		this.jf1 =  jf1;
	}
	
	public void actionPerformed(ActionEvent e) {
		
			fileSearcher fs = new fileSearcher();
			fs.Search(jf.getText(), jf1.getText());
		}
	
}

  

 

 

 

界面粗糙了点.
文件搜索器
 

文件搜索器


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论