Java 从文件中删除空行

Java 从文件中删除空行,java,file,writing,Java,File,Writing,我试图通过在程序中添加以下COEDE来删除文件中的空行 private static void Normalize(File f) throws FileNotFoundException, IOException { if(!temp.exists()){ temp.createNewFile(); } FileOutpu

我试图通过在程序中添加以下COEDE来删除文件中的空行

private static void Normalize(File f) throws FileNotFoundException, IOException {

                    if(!temp.exists()){
                         temp.createNewFile();
                    }

                    FileOutputStream fop=new FileOutputStream(temp,true);

                    Set<String> uniqueLines = new HashSet<String>();
                    BufferedReader  br = new BufferedReader(new FileReader(f));
                    String readLine=br.readLine();
                    for(final String s : readLine.split(" ")){
                        fop.write(s.getBytes());
                        fop.write(System.getProperty("line.separator").getBytes());

                    }
                    uniqueLines.add(readLine);
                    while((readLine=br.readLine())!=null)
                    {

                       if (!uniqueLines.contains(readLine)) {

                         for(final String s : readLine.split(" ")){
                            fop.write(s.getBytes());
                            fop.write(System.getProperty("line.separator").getBytes());

                        }

                        uniqueLines.add(readLine);
                    }
                  }
                }
在写入部分,它给出了
notsuchelementist
异常

用法

 while((readLine=br.readLine())!=null)
  {

   if (readLine.isEmpty() || readLine.trim().equals("") || readLine.trim().equals("\n"))
        continue;
...

空行并不意味着它是空的。它肯定会失败。如果它不是空的,那么它就不是空的。我认为这将在空行上工作我认为这是空白的定义。它将删除一些空白,但仍有一个或两个空白。另外,在该函数结束后,当我添加isEmpty部分和删除它时,它将停止继续执行程序的其余部分,它继续执行程序的其余部分,但由于空行引起的异常而停止
 while((readLine=br.readLine())!=null)
  {

   if (readLine.isEmpty() || readLine.trim().equals("") || readLine.trim().equals("\n"))
        continue;
...