Java 输出文件没有';t包含我从源代码复制的所有行

Java 输出文件没有';t包含我从源代码复制的所有行,java,file-io,java.util.scanner,filewriter,Java,File Io,Java.util.scanner,Filewriter,下面是我编写的代码,bucketsRow包含80个元素,for循环中的println语句正确地显示了这一点readFile是一种扫描器,它在一个有800行的文件中迭代,其中元素是第一个单词,其中80行出现在bucketsRow中。我希望复制到我使用filewriter的新文件中的那些行 for(int p=0;p<bucketsRow.length;p++) { System.out.println("p:"+p+"Doc at p:"+names[p]); inner:

下面是我编写的代码,
bucketsRow
包含80个元素,for循环中的println语句正确地显示了这一点
readFile
是一种扫描器,它在一个有800行的文件中迭代,其中元素是第一个单词,其中80行出现在
bucketsRow
中。我希望复制到我使用filewriter的新文件中的那些行

for(int p=0;p<bucketsRow.length;p++)
{
    System.out.println("p:"+p+"Doc at p:"+names[p]);
    inner: while(readfile.hasNextLine())
    {
        String line=readfile.nextLine();
        //System.out.println(line);
        if(line.indexOf(names[p])!=-1)
        {
            System.out.println(line.indexOf(names[p]));
            writefile.write(line);
            writefile.write(System.getProperty( "line.separator" ));
            break inner;
        }
    }
}
writefile.flush();
writefile.close();     

for(int p=0;p这里的问题是您需要将scanner类引用指针的焦点再次设置为文件的开头,然后再次开始比较。因此,输出文件中的某些行丢失了


为了将焦点移到文件的开头,请在进入“while”循环时重新创建一个扫描仪引用。

这段代码的具体问题是什么?