Module java.desktop

Class MidiFileReader

java.lang.Object
javax.sound.midi.spi.MidiFileReader

public abstract class MidiFileReader extends Object
一个MidiFileReader提供MIDI文件读取服务。实现此接口的类可以解析一个或多个类型的MIDI文件的格式信息,并可以从这些类型的文件生成一个Sequence对象。
自版本:
1.3
  • Constructor Details

    • MidiFileReader

      protected MidiFileReader()
      子类调用的构造函数。
  • Method Details

    • getMidiFileFormat

      public abstract MidiFileFormat getMidiFileFormat(InputStream stream) throws InvalidMidiDataException, IOException
      获取提供的输入流的MIDI文件格式。流必须指向有效的MIDI文件数据。一般来说,MIDI文件读取器可能需要从流中读取一些数据,然后确定是否支持它。这些解析器必须能够标记流,读取足够的数据以确定是否支持该流,并且如果不支持,则将流的读取指针重置为其原始位置。如果输入流不支持此操作,则此方法可能会因IOException而失败。
      参数:
      stream - 应从中提取文件格式信息的输入流
      返回:
      描述MIDI文件格式的MidiFileFormat对象
      抛出:
      InvalidMidiDataException - 如果流指向系统识别的无效MIDI文件数据
      IOException - 如果发生I/O异常
      NullPointerException - 如果streamnull
      参见:
    • getMidiFileFormat

      public abstract MidiFileFormat getMidiFileFormat(URL url) throws InvalidMidiDataException, IOException
      获取提供的URL的MIDI文件格式。该URL必须指向有效的MIDI文件数据。
      参数:
      url - 应从中提取文件格式信息的URL
      返回:
      描述MIDI文件格式的MidiFileFormat对象
      抛出:
      InvalidMidiDataException - 如果URL不指向系统识别的有效MIDI文件数据
      IOException - 如果发生I/O异常
      NullPointerException - 如果urlnull
    • getMidiFileFormat

      public abstract MidiFileFormat getMidiFileFormat(File file) throws InvalidMidiDataException, IOException
      获取提供的File的MIDI文件格式。该File必须指向有效的MIDI文件数据。
      参数:
      file - 应从中提取文件格式信息的File
      返回:
      描述MIDI文件格式的MidiFileFormat对象
      抛出:
      InvalidMidiDataException - 如果File不指向系统识别的有效MIDI文件数据
      IOException - 如果发生I/O异常
      NullPointerException - 如果filenull
    • getSequence

      public abstract Sequence getSequence(InputStream stream) throws InvalidMidiDataException, IOException
      从提供的输入流获取MIDI序列。流必须指向有效的MIDI文件数据。一般来说,MIDI文件读取器可能需要从流中读取一些数据,然后确定是否支持它。这些解析器必须能够标记流,读取足够的数据以确定是否支持该流,并且如果不支持,则将流的读取指针重置为其原始位置。如果输入流不支持此操作,则此方法可能会因IOException而失败。
      参数:
      stream - 应从中构建Sequence的输入流
      返回:
      基于输入流中包含的MIDI文件数据的Sequence对象
      抛出:
      InvalidMidiDataException - 如果流不指向系统识别的有效MIDI文件数据
      IOException - 如果发生I/O异常
      NullPointerException - 如果streamnull
      参见:
    • getSequence

      public abstract Sequence getSequence(URL url) throws InvalidMidiDataException, IOException
      从提供的URL获取MIDI序列。该URL必须指向有效的MIDI文件数据。
      参数:
      url - 应构建SequenceURL
      返回:
      基于URL指向的MIDI文件数据的Sequence对象
      抛出:
      InvalidMidiDataException - 如果URL不指向系统识别的有效MIDI文件数据
      IOException - 如果发生I/O异常
      NullPointerException - 如果urlnull
    • getSequence

      public abstract Sequence getSequence(File file) throws InvalidMidiDataException, IOException
      从提供的File获取MIDI序列。该File必须指向有效的MIDI文件数据。
      参数:
      file - 应从中构建SequenceFile
      返回:
      基于File指向的MIDI文件数据的Sequence对象
      抛出:
      InvalidMidiDataException - 如果File不指向系统识别的有效MIDI文件数据
      IOException - 如果发生I/O异常
      NullPointerException - 如果filenull