@Override
  public synchronized void close() throws java.io.IOException {
    if (spiw != null) {
      flush();
      spiw.close();
      spiw = null;
    }
    spi = null;
  }
@Override
  public synchronized void close() throws java.io.IOException {
    if (spiw != null) {
      flush();
      spiw.close();
      spiw = null;
    }
    spi = null;
  }
@ Override public synchronized void close ( ) throws java . io . IOException { if ( spiw != null ) { flush ( ) ; spiw . close ( ) ; spiw = null ; } spi = null ; }
close the file.
@throws IOException if I/O error
close the file .