package cn315_1;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
public class FileDisplay extends JFrame {
/**
* 文件搜索器
*
* @param args
*/
// 定义一些属性
private JPanel panel;// 面板
private JComboBox jcb;// 下拉菜单
private JTextField jtf;// 文本框
private JButton buStart;// 开始按钮
private JButton buStop;// 停止按钮
private JTextArea jta; // 多行文本框
private Object Root = "D:\\";
private String content;
private String path;
private int count;
public static void main(String[] args) {
// 创建对象
FileDisplay fd = new FileDisplay();
// 调用显示窗体的方法
fd.showFrame();
}
// 构造函数 初始化各组件
public FileDisplay() {
// 初始化 各组件
String[] menu = { "C:\\", "D:\\", "E:\\", "F:\\" };
jcb = new JComboBox(menu);// 下拉菜单
jtf = new JTextField(10);// 文本框
buStart = new JButton("开始搜索");// 搜索按钮
buStop = new JButton("停止搜索");
jta = new JTextArea();// 多行文本框
panel = new JPanel();
// 添加组件到panel
panel.add(jcb);
panel.add(jtf);
panel.add(buStart);
panel.add(buStop);
// 添加组件到JFrame
this.add(panel, BorderLayout.NORTH);
this.add(jta, BorderLayout.CENTER);
// 题目前边添加图像
this.setIconImage(new ImageIcon("image\\sousou.jpg").getImage());
// 创建一个滚动条
JScrollPane jsp = new JScrollPane(jta);
this.add(jsp);
}
public void showFrame() {
this.setTitle("我的文件搜索器1.0");
this.setSize(400, 500);
this.setLocationRelativeTo(null);
this.setResizable(false);
this.setDefaultCloseOperation(3);
// 下拉菜单中添加监听器
jcb.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Root = jcb.getSelectedItem();
System.out.println("得到的盘是:" + Root);
}
});
// 开始按钮上添加监听器
buStart.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// 得到文本框中输入的内容
content = jtf.getText();
System.out.println("您输入的文件名字是" + content);
// 创建FileFind监听器对象
FileFind filefind = new FileFind();
// 调用搜索文件的方法
count = filefind.getFilePath((String) Root, content);
System.out.println("找到的文件个数是" + count);
ArrayList<String> arrlist = filefind.getArrayList();
if (count > 0) {
for (int i = 0; i < arrlist.size(); i++) {
jta.append("你所查找的内容的路径是:" + arrlist.get(i) + "\n");
}
} else {
jta.append("没有找到你要查找的内容" + "\n");
}
}
});
this.setVisible(true);
}
}
//定义一个类 主要返回要搜索的文件的路径
package cn315_1;
import java.io.*;
import java.util.ArrayList;
public class FileFind {
private String path;
private ArrayList<String> arrlist = new ArrayList<String>();;
// 定义一个搜索文件的方法
public int getFilePath(String fileName, String content) {
// 定义一个计数器
int count = 0;
if (content.equals("")) {
return 0;
}
// 用传入的参数创建一个文件
File fileRoot = new File(fileName);
// 得到该文件下所有的文件 返回数组
File[] fileList = fileRoot.listFiles();
if (null != fileList && fileList.length != 0) {
// 遍历数组
for (int i = 0; i < fileList.length; i++) {
// 如果是真实的文件
if (fileList[i].isFile()) {
String dir = fileList[i].getAbsolutePath();
if (dir.indexOf(content) >= 0) {
count++;
arrlist.add(dir);
}
}
if (fileList[i].isDirectory()) {
// 得到该文件夹的路径
path = fileList[i].getAbsolutePath();
count += getFilePath(path, content);
}
}
}
return count;
}
public ArrayList<String> getArrayList() {
return arrlist;
}
}
//还有一些知识如线程没用到,所以停止按钮上没有添加监听 无法实现停止的功能
- 大小: 124.2 KB
分享到:
相关推荐
文件搜索器,正如其名,是一种能够帮助用户在计算机中快速定位和查找特定文件的工具。在日常工作中,我们常常需要查找存储在电脑中的某个文件,但面对庞大的文件系统,手动逐个文件夹查找无疑效率低下。这时,一个...
文件搜索器是一款强大的工具,专为用户快速查找和管理计算机中的文件而设计。它具有高效、灵活和易用的特点,能够帮助用户在海量文件中准确地定位到目标文件,节省了大量手动翻阅文件夹的时间。这款软件尤其适用于...
在Java编程领域,文件搜索器是一个实用的工具,它能够帮助用户快速查找并定位到指定目录下的特定文件或文件类型。这个项目展示了如何利用Java语言的丰富功能来实现这一目标。接下来,我们将深入探讨其中涉及的关键...
《一个多线程文件搜索器详解》 在计算机领域,文件搜索是日常操作中不可或缺的一环。传统的文件搜索工具往往依赖单线程进行,这在处理大量数据时可能会显得效率低下,尤其是在大型文件系统中。因此,多线程文件搜索...
《多线程字符串代码文件搜索器》 在现代软件开发中,高效地处理大量数据是一项基本需求,尤其是在处理文件系统中的文本数据时。"多线程字符串代码文件搜索器"正是为了解决这一问题而设计的。这个工具是用VC(Visual...
【标题】"C#写的文件搜索器"是一个基于C#编程语言开发的实用软件,用于在计算机中快速、高效地查找指定类型的文件。这个小工具能够帮助用户在大量的文件和文件夹中定位到他们需要的特定文件,极大地提高了工作效率。...
在这个"QT写的文件搜索器"项目中,开发者结合了Qt Designer的设计功能和编程逻辑,构建了一个能够搜索指定路径下文件的应用程序。 首先,Qt Designer是Qt库的一部分,它提供了拖放式的图形界面设计环境。通过...
在IT领域,开发一个简单的文件搜索器是许多初学者和专业人士都可能会遇到的任务。这个"简单文件搜索器的实现"项目旨在教你如何构建一个能够快速查找计算机中特定文件的工具。我们将通过分析给出的源码文件来理解其...
使用java实现的一个文件搜索器,该搜素器能够自动读出电脑上面已有的盘,使用者可以通过选择指定盘,输入需要搜索的关键字进行搜索,也可以通过文件选择器进行选择,在指定的文件夹中进行搜索,且该过程可中断。
快速文件搜索器是一种高效能的计算机工具,设计用于帮助用户在海量的文件系统中迅速找到所需文件。在日常工作中,面对日益增长的文件数量,传统的操作系统内置的文件搜索功能往往显得力不从心,这就催生了快速文件...
《易语言文件搜索器》是一款基于易语言编程的实用工具,专用于在计算机中快速查找特定的文件。这款软件的核心功能在于其高效、简洁的文件搜索机制,为用户提供了便捷的文件定位服务。下面我们将详细解析这款软件的...
【Java文件搜索器】是一个基于Java编程语言实现的实用工具,它允许用户在计算机的各个磁盘或指定的文件夹中快速查找特定的文件。这个应用程序利用了Java强大的I/O和文件操作功能,为用户提供了一个方便的方式来定位...
【标题】:“简单的文件搜索器” 【描述】:在信息技术领域,文件搜索是日常工作中一个不可或缺的功能。一个简单的文件搜索器通常是指一个程序或工具,它允许用户在计算机上快速定位和查找特定的文件或文件夹。这个...
标题中的“文件搜索器多线程的搜索器”指的是一个采用了多线程技术来提高文件搜索效率的应用程序。在IT领域,多线程是程序设计中的一个重要概念,它允许一个程序同时执行多个任务,以此提升程序性能,尤其是在处理...
"VC6.0 文件搜索器"是一款模仿Windows操作系统自带搜索引擎的工具,专为用户提供快速、高效和精准的文件及文件夹查找服务。该程序利用Visual C++ 6.0开发,对于初学者而言,它是了解和学习编程技术,尤其是文件系统...
### 知识点:在VB中开发自制文件搜索器 #### 1. 项目概述 在Visual Basic(简称VB)环境中构建一个文件搜索工具,旨在帮助用户高效地查找指定驱动器及其子目录下的文件。本项目的核心功能包括: - 驱动器选择 ...
【标题】:“超级实用的文件搜索器” 在我们的日常工作中,高效地管理和寻找文件是必不可少的。传统的操作系统自带的文件搜索功能往往效率低下,不能满足快速查找的需求。这就是“超级实用的文件搜索器”应运而生的...
【Android 文件搜索器】是一款专为Android平台设计的应用程序,旨在帮助用户快速、高效地在设备上查找指定的文件。这个工具可能包含了源代码,因此对于开发者来说,它不仅是一个实用工具,也是一个学习和研究的对象...
《深入解析多线程文件搜索器》 在计算机科学领域,多线程技术是一种重要的并发执行方式,尤其在处理大量I/O操作时,如文件搜索。VC6.0中的MFC(Microsoft Foundation Classes)库提供了丰富的支持来创建多线程应用...