嘿我试图在日志文件名“SHIKHAR.log”中读取任何“root”字符串,但编译器会继续显示。
dam.java:12: error: cannot find symbol
System.out.println("I found in file " +SHIKHAR.getName());
^
symbol: variable SHIKHAR
location: class dam
1 error
我不确定它有什么问题我尝试附加扩展并尝试其他方式,但它不起作用。
import java.util.Scanner;
import java.io.*;
class dam
{
public static void main (String arg[])
{
final Scanner scanner = new Scanner("SHIKHAR");
while (scanner.hasNextLine()) {
final String lineFromFile = scanner.nextLine();
if(lineFromFile.contains("root")) {
// a match!
System.out.println("I found in file " +SHIKHAR.getName());
break;
}
}
}
}
答案 0 :(得分:0)
您使用的是未定义的变量名 SHIKHAR 。
System.out.println("I found in file " +SHIKHAR.getName());
根据您的假设SHIKHAR
是文件,但在您的代码中,它只是一个字符串文字。
您可以将变量定义为
final File SHIKHAR = new File("SHIKHAR");
final Scanner scanner = new Scanner(SHIKHAR);
BTW,根据您当前的代码,它只会读取字符串而不是名为SHIKHAR
的文件。
final Scanner scanner = new Scanner("SHIKHAR");