我正在尝试创建.bat文件以打开.bat文件文件夹中的.txt文件(读取行)。然后,打开一个Java文件(搜索方法)。 所以当我在cmd中调用它时,我会输入" search.bat test.txt方法"
到目前为止,我所有人都是:
@echo off
echo "Launching.."
pause
START "C:\Users\*Username*\Downloads"
答案 0 :(得分:0)
以下是您正在寻找的一个非常简单的示例。运行SearchFiles时,它将提示您输入方法名称(字符串)和目录。它将扫描所有* .java文件的路径,并查找您指定的“方法名称”。请记住,这是一个字符串搜索,因此您可能会得到误报。
public class SearchFiles
{
public static void main(String[] args)
{
SearchFiles searchFiles = new SearchFiles();
Scanner scan = new Scanner(System.in);
System.out.println("Enter the method to be searched.. ");
String methodName = scan.next();
System.out.println("Enter the directory where to search ");
String directory = scan.next();
searchFiles.findFile(methodName, new File(directory));
}
public void findFile(String methodName, File file)
{
File[] list = file.listFiles(new FilenameFilter()
{
public boolean accept(File dir, String fileName)
{
return fileName.endsWith(".java");
}
});
if (list != null)
for (File javaFile : list)
{
if (javaFile.isDirectory())
{
findFile(methodName, javaFile);
}
else
{
scanFile(javaFile, methodName);
}
}
}
public void scanFile(File file, String method)
{
Scanner scanner = null;
try
{
scanner = new Scanner(file);
while (scanner.hasNextLine())
{
String nextToken = scanner.nextLine();
if (nextToken.contains(method))
{
System.out.println(String.format("file found in %s" , file.getAbsolutePath()));
}
}
scanner.close();
}
catch (FileNotFoundException e)
{
// you will need to handle this
// don't do this !
e.printStackTrace();
}
}
}