Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
初始化BufferedReader(JAVA)_Java_Nullpointerexception_Bufferedreader - Fatal编程技术网

初始化BufferedReader(JAVA)

初始化BufferedReader(JAVA),java,nullpointerexception,bufferedreader,Java,Nullpointerexception,Bufferedreader,我目前正在编写一个方法,测试输入字符串(密码)是否包含字典的一部分。字典是一个简单的txt文件,每行一个单词。现在我想检查字典的每一行是否包含在输入字符串中。下面的代码应该适用于我: public boolean dictionaryCheck(String pLine) { BufferedReader myReader; String currentLine; try { myReader = new BufferedReader(new FileReader("di

我目前正在编写一个方法,测试输入字符串(密码)是否包含字典的一部分。字典是一个简单的txt文件,每行一个单词。现在我想检查字典的每一行是否包含在输入字符串中。下面的代码应该适用于我:

public boolean dictionaryCheck(String pLine)
{
  BufferedReader myReader;
  String currentLine;
  try
  {
    myReader = new BufferedReader(new FileReader("dict.txt"));
    while(myReader.readLine() != null)
    {
      currentLine = myReader.readLine();
      if(pLine.contains(currentLine))
      {
        return false;
      }
    }
  }
  catch (Exception e){System.out.println("Error: " + e);}
  return true;
}
问题是,当我使用任何参数字符串运行该方法时,会出现以下错误:

错误:java.lang.NullPointerException

因此,我假设BufferedReader没有正确初始化

有没有关于如何解决这个问题的建议?代码对我来说似乎很好,但我可能会忽略一个错误

提前感谢,


Joe Cocker

您有两个对readLine()的调用-内部调用可能返回null

while( (currentLine = myReader.readLine()) != null)
{
  if(pLine.contains(currentLine))
  {
    return false;
  }
}

您有两个对readLine()的调用-内部调用可能返回null

while( (currentLine = myReader.readLine()) != null)
{
  if(pLine.contains(currentLine))
  {
    return false;
  }
}

你能添加完整的stacktrace吗?你能添加完整的stacktrace吗?