在指定路径或者是文件名查找指定的字符串
采用WINDOWS的内容查找,居然只支持文本文件,不支持如JSP等文件。那就自己写一个吧,感觉还可以,将所以包含查找字符串的全路径都打印出来,这样就能够一目了然了。源程序如 下:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
public class SearchInJspFile ...{
/** *//**
* 在指定的文件名中查找对应的字符串,存在就将该文件名绝对路径打印出来
* @param fileName 文件名的绝对路径,String型
* @param srcStr 要查找的字符串,String型
*/
public void searchFile(String fileName,String srcStr)
{
File file=new File(fileName);
try ...{
FileReader fr=new FileReader(file);
BufferedReader br=new BufferedReader(fr);
String strLine="";
while((strLine=br.readLine())!=null)
...{
if(strLine.indexOf(srcStr)>0)
...{
System.out.println(fileName);
break;
}
}
br.close();
fr.close();
} catch (Exception e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/** *//**
* 在指定的绝对路径中查找指定的字符串
* @param path 绝对路径
* @param srcStr 要查找的字符串
*/
public void searchPath(String path,String srcStr)
...{
File file=new File(path);
if(file.isDirectory())
{
File[] fileList=file.listFiles();
for(int i=0;i<fileList.length;i++)
{
if(fileList[i].isDirectory())//是目录就调用递归
{
searchPath(fileList[i].getAbsolutePath(),srcStr);
}
else
{
searchFile(fileList[i].getAbsolutePath(),srcStr);
}
}
}
else
{
searchFile(path,srcStr);
}
}
public static void main(String[] args) ...{
// TODO Auto-generated method stub
String path="H:/xinkuaijizhunze/src/BIMIS";
String srcStr="<iframe name="pubinfo"";
SearchInJspFile s=new SearchInJspFile();
s.searchPath(path, srcStr);
System.out.println("执行完毕!");
}
}
http://www.diybl.com/course/3_program/java/javajs/2008219/100271.html