本程序搜索文件中的字

本程序搜索文件中的字
/** */ /**  (C) 北大青鸟APTECH.
 *   版权所有
 
*/


/** */ /**
 * 本程序导入所需的类.
 
*/


import  java.io.File;
import  java.io.BufferedReader;
import  java.io.FileReader;
import  java.io.IOException;

/** */ /**
 * 本程序搜索文件中的字.
 * 
@version 1.0 2005 年 5 月 20 日
 * 
@author Michael
 
*/


class  WordSearch  {

/** *//** 存储搜索模式. */
    String searchPattern;

/** *//** 创建一个 File 对象. */
    File fileObj;

/** *//** 
 *  构造方法.
 *  
@param name 包含搜索模式
 *  
@param fileName 包含要搜索的文件
 
*/

    WordSearch(String name, String fileName) 
{

       searchPattern 
= name;
       fileObj 
= new File(fileName);
    }


/** *//** 
 * 执行搜索的方法.
 * 
@param fileName 包含文件名
 * 
@throws IOException 对象
 
*/

    
void search(String fileName) throws IOException {

         BufferedReader bufferObj 
= new BufferedReader(
         
new FileReader(fileName));
         String line;
         
int occurance = 0;
         
if (fileObj.exists() && fileObj.isFile()) {
            
while ((line = bufferObj.readLine()) != null{
                  
if ((line.indexOf(searchPattern)) != -1{
                       occurance
++;
                   }

            }

         }


          
if (occurance == 0{
                System.out.println(
"\n*******************");
                System.out.println(
"模式未找到");
                System.out.println(
"*******************");
          }
 else {
                System.out.println(
"\n************************************");
                System.out.println(
"在文件 " + fileName + " 中找到的 " 
                    
+ searchPattern);

          }

          System.out.println();
          System.out.println( 
"文件 " + fileName +" 中 " 
              
+ searchPattern + " 的出现次数是: " + occurance);
    }


/** *//** 
 * 显示是文件或是目录的方法.
 
*/

    
void display() {
         
if (fileObj.exists() && fileObj.isDirectory()) {
                System.out.println(
"\n*************************");
                System.out.println(
"名称: " + fileObj + " 是一个目录");
                System.out.println(
"*************************");
         }
 else  {
               System.out.println(
"");
               System.out.println(
"名称: " + fileObj + " 是一个文件");
               System.out.println(
"********************************");
         }

    }

}


/** */ /**
 * 本程序测试 WordSearch 类.
 * 
@version 1.0 2005 年 5 月 20 日
 * 
@author Michael
 
*/

class  WordSearchTest  {

   
/** *//** 
    * 构造方法. 
    
*/

    
protected WordSearchTest() {
    }


   
/** *//**
    * 这是一个 main 方法.
    * 
@param args 被传递至 main 方法的参数
    
*/

    
public static void main(String[] args)   {
        
if (args.length == 0 || args.length == 1)    {
               System.out.println(
"用法无效");
               System.out.println(
"用法 : java Search <pattern filename>");
               
return;
        }

        
try {
                WordSearch wordObj 
= new WordSearch(args[0], args[1]);
                wordObj.search(args[
1]);
                wordObj.display();
            }
 catch (IOException e) {
                System.out.println(
"错误");
            }


   }

}
 

你可能感兴趣的:(本程序搜索文件中的字)