javax.sound.midi.spi

## Class MidiFileWriter

- java.lang.Object
- - javax.sound.midi.spi.MidiFileWriter

-     public abstract class MidiFileWriter
      extends Object

  A `MidiFileWriter` supplies MIDI file-writing services. Classes that implement this interface can write one or more types of MIDI file from a ``Sequence`` object.
  Since:
    1.3

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MidiFileWriter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract int[]` | `getMidiFileTypes()` Obtains the set of MIDI file types for which file writing support is provided by this file writer.
    `abstract int[]` | `getMidiFileTypes(Sequence sequence)` Obtains the file types that this file writer can write from the sequence specified.
    `boolean` | `isFileTypeSupported(int fileType)` Indicates whether file writing support for the specified MIDI file type is provided by this file writer.
    `boolean` | `isFileTypeSupported(int fileType, Sequence sequence)` Indicates whether a MIDI file of the file type specified can be written from the sequence indicated.
    `abstract int` | `write(Sequence in, int fileType, File out)` Writes a stream of bytes representing a MIDI file of the file type indicated to the external file provided.
    `abstract int` | `write(Sequence in, int fileType, OutputStream out)` Writes a stream of bytes representing a MIDI file of the file type indicated to the output stream provided.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### MidiFileWriter

          public MidiFileWriter()

  - ### Method Detail

    - #### getMidiFileTypes

          public abstract int[] getMidiFileTypes()

      Obtains the set of MIDI file types for which file writing support is provided by this file writer.
      Returns:
        array of file types. If no file types are supported, an array of length 0 is returned.

    - #### getMidiFileTypes

          public abstract int[] getMidiFileTypes(Sequence sequence)

      Obtains the file types that this file writer can write from the sequence specified.
      Parameters:
        `sequence` - the sequence for which MIDI file type support is queried
      Returns:
        array of file types. If no file types are supported, returns an array of length 0.

    - #### isFileTypeSupported

          public boolean isFileTypeSupported(int fileType)

      Indicates whether file writing support for the specified MIDI file type is provided by this file writer.
      Parameters:
        `fileType` - the file type for which write capabilities are queried
      Returns:
        `true` if the file type is supported, otherwise `false`

    - #### isFileTypeSupported

          public boolean isFileTypeSupported(int fileType,
                                    Sequence sequence)

      Indicates whether a MIDI file of the file type specified can be written from the sequence indicated.
      Parameters:
        `fileType` - the file type for which write capabilities are queried
        `sequence` - the sequence for which file writing support is queried
      Returns:
        `true` if the file type is supported for this sequence, otherwise `false`

    - #### write

          public abstract int write(Sequence in,
                  int fileType,
                  OutputStream out)
                             throws IOException

      Writes a stream of bytes representing a MIDI file of the file type indicated to the output stream provided.
      Parameters:
        `in` - sequence containing MIDI data to be written to the file
        `fileType` - type of the file to be written to the output stream
        `out` - stream to which the file data should be written
      Returns:
        the number of bytes written to the output stream
      Throws:
        `IOException` - if an I/O exception occurs
        `IllegalArgumentException` - if the file type is not supported by this file writer
      See Also:
        `isFileTypeSupported(int, Sequence)`, `getMidiFileTypes(Sequence)`

    - #### write

          public abstract int write(Sequence in,
                  int fileType,
                  File out)
                             throws IOException

      Writes a stream of bytes representing a MIDI file of the file type indicated to the external file provided.
      Parameters:
        `in` - sequence containing MIDI data to be written to the external file
        `fileType` - type of the file to be written to the external file
        `out` - external file to which the file data should be written
      Returns:
        the number of bytes written to the file
      Throws:
        `IOException` - if an I/O exception occurs
        `IllegalArgumentException` - if the file type is not supported by this file writer
      See Also:
        `isFileTypeSupported(int, Sequence)`, `getMidiFileTypes(Sequence)`

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2015, Oracle and/or its affiliates. All rights reserved.