fc.close();
os.flush(); fos.close();
    public void dumpBinary(String path) {	try {	    FileOutputStream fos = new FileOutputStream(path);	    FileChannel fc = fos.getChannel();	    ByteBuffer bb = ByteBuffer.allocate(10000);	    int written;	    bb.putInt(MAGIC);	    bb.putInt(VERSION);	    bb.putInt(sampleRate);	    bb.putInt(numChannels);	    bb.putFloat(lpcMin);	    bb.putFloat(lpcRange);	    bb.putInt(diphoneMap.size());	    bb.flip();	    fc.write(bb);	    bb.clear();	    for (Iterator i = diphoneMap.values().iterator(); i.hasNext();) {		Diphone diphone = (Diphone) i.next();		diphone.dumpBinary(bb);		bb.flip();		fc.write(bb);		bb.clear();	    }	    fc.close();	} catch (FileNotFoundException fe) {	    throw new Error("Can't dump binary database " +		    fe.getMessage());	} catch (IOException ioe) {	    throw new Error("Can't write binary database " +		    ioe.getMessage());	}    }