public void writeToFile(File outFile) throws FileNotFoundException, IOException { FileOutputStream fout = new FileOutputStream(outFile); fout.write(IDENTIFIER); fout.write(MidiUtil.intToBytes(6, 4)); fout.write(MidiUtil.intToBytes(mType, 2)); fout.write(MidiUtil.intToBytes(mTrackCount, 2)); fout.write(MidiUtil.intToBytes(mResolution, 2)); for (MidiTrack T : mTracks) { T.writeToFile(fout); } fout.flush(); fout.close(); }