⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 file.java

📁 文件过滤器
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.StringTokenizer;
class  ydq extends Frame implements ActionListener
{ 
  
  File file;
  FileDialog fd;
  Button button1,button2;
  TextArea area1,area2;
  TextField text;
  Box basebox,boxh1;
  String filename[]={}; 
  File dir;  
  BufferedReader bin;
  FileReader file_reader;
  Label label1,label2,label3;
   ydq()
   {super("多文件指定文字查询");
   setSize(600,500);
   setBounds(300,30,600,500);
   setVisible(true);
   setResizable(false);
   button1=new Button("添加TXT文件");
   button2=new Button("查询");
   text=new TextField(30);
   area1=new TextArea(10,10);
   area2=new TextArea(10,10);
   label1=new Label("选择待查询的所有的TXT文件");
   label2=new Label("含有指定文字的TXT文件列表");
   label3=new Label("输入指定查询的文字");
   boxh1=Box.createHorizontalBox();
   basebox=Box.createVerticalBox();
    boxh1.add(button1);
    boxh1.add(label3);
    boxh1.add(text);
    boxh1.add(button2);
    basebox.add(label1);
    basebox.add(area1);
    basebox.add(boxh1);
    basebox.add(label2);
    basebox.add(area2);
    add(basebox);
   button1.addActionListener(this);
   button2.addActionListener(this);
   button1.setBackground(Color.cyan);
   button2.setBackground(Color.cyan);
   label3.setBackground(Color.cyan);
   addWindowListener (new WindowAdapter()
       {public void windowClosing(WindowEvent e)
          {
          System.exit(0);
          }
       }
    );
    validate();
   
   }
   public void actionPerformed(ActionEvent e)
   { if(e.getSource()==button1)
        { area1.setText("");
         JFileChooser fc=new JFileChooser();
          fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
         fc.showOpenDialog(null);
         if(fc.getSelectedFile()!=null)
	     {  dir=fc.getSelectedFile();
	      FileAccept acceptCondition=new FileAccept("txt");
	      filename=dir.list(acceptCondition);
	      }
	      for(int i=0;i<filename.length;i++)
         {
          area1.append(filename[i]+'\n');
         }
	    }
	    else if(e.getSource()==button2)
	    { area2.setText("");
	      String s=area1.getText(); 
	      String gg=text.getText();
	      StringTokenizer fenxi=new StringTokenizer(s,"\n");
          while(fenxi.hasMoreTokens())
          {String str=fenxi.nextToken();
           String nn=null,q=null;  
          try
          {File file=new File(dir,str);
          file_reader=new FileReader(file);
          bin=new BufferedReader(file_reader);
          while((q=bin.readLine())!=null)
          {nn=nn+q;
          }
          bin.close();
          file_reader.close();
          if(nn.indexOf(gg)!=-1)
          area2.append(str+'\n');
          }
          catch(IOException e2) {}
          
	     }
	    }
   }
   class FileAccept implements FilenameFilter
   {String str=null;
    FileAccept(String s)
    {str="."+s;
    }
    public boolean accept(File dir,String name)
    {return name.endsWith(str);
    }
   }
   
  
 }
 public class file
 { public   static void main(String hh[])
   {ydq hhw=new ydq();
   }
 }  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -