java技术博客

jsp博客
数据加载中……
本程序搜索文件中的字
/**  (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(
"错误");
            }


   }

}
 

posted on 2008-10-30 09:12 郭兴华 阅读(80) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: