地對地導彈

package pkg;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class Find {
  //所要查詢的被調用的類;
  private String  stringToFind="com.ebao.life.report.domain.db.DBean;";
 //調用模塊;
  private String  modueName=""; 
 
  private String  tempStr=null;
 
 //某一目錄下是否調用了stringToFind
 public void  findInDir(File dir)
 {
 File files[];
 int i=0;
 String temp1="",temp2="";
 //depth++;

  files=dir.listFiles(); 
  for(i=0;i<files.length;i++)
  {     
 if(files[i].isDirectory())
   {
 /*if(depth==2&&(!files[i].getName().trim().equals("java"))&&(!files[i].getName().trim().equals("test")))
   {
 //System.out.println(files[i].getName().trim());
  continue;
  }*/
   findInDir(files[i]);   
   }  
  else
   {
   temp1=files[i].getName().toString().trim();
   temp2=temp1.substring(temp1.lastIndexOf(".")+1, temp1.length()).toLowerCase();
   if("java".equals(temp2))
   {
    findInFile(files[i]);
   }
   }
   }     
  }
 
 
 
 //在某一文件中查找是否調用了stringToFind
 private void findInFile(File file)
 {
  int line=0,i;  
  BufferedReader reader=null;
  String  arrayStr[],temp[];
  String modueStr=null;
  File f=new File("D:\\result.txt");
 
  try
  {
   reader=new BufferedReader(new FileReader(file));
   while((tempStr=reader.readLine())!=null)
   {
    tempStr=tempStr.trim();
    arrayStr=tempStr.split(" ");
    line++; 
    if(arrayStr[0].equals("import"))
    {
    for(i=1;i<arrayStr.length;i++)
    {
    if(arrayStr[i].equals(""))
     continue;
    else    
     {
     modueStr=arrayStr[i];      
     break;
    }    
    }
    }
   
    if((arrayStr[0].trim().equals("import"))&&(modueStr.equals(stringToFind)))
    {
     temp=file.getPath().toString().trim().split("\\\\");
     for(i=0;i<temp.length;i++)
     {
      if(temp[i].equals("life_code")&&(temp.length-2>=i))
      {
     modueName=temp[i+1];      
      }
     }
     
     System.out.println("\n\n");
     System.out.println("調用模塊:"+modueName+"\n");
     System.out.println("文件名:"+file.getName()+"\n");
     System.out.println("文件路徑:"+file.getPath().toString()+"\n");
     System.out.println("第"+line+"行"+"\n");
     System.out.println("\n");
     FileWriter fw =new FileWriter(f,true);
     fw.write("調用模塊:"+modueName+"\r\n");
     fw.write("文件名:"+file.getName()+"\r\n");
     fw.write("文件路徑:"+file.getPath().toString()+"\r\n");
     fw.write("第"+line+"行"+"\r\n");
     fw.write("\r\n\r\n");
     fw.flush();
     fw.close();
    }  
   }
   reader.close();
  }
  catch(IOException ie){
   ie.printStackTrace();  
  }
  finally
  {
   if(reader!=null)
   {
    try
    {
     reader.close();
    }
    catch(IOException ie)
    {
     ie.printStackTrace();
    }
   }
  
  }
 
 }
 
 }


 

發佈了24 篇原創文章 · 獲贊 0 · 訪問量 9592
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章