Spec-Zone.ru › OpenJDK 27

Класс MidiSystem

java.lang.Object
javax.sound.midi.MidiSystem
public class MidiSystem extends Object
Класс MidiSystem предоставляет доступ к установленным ресурсам MIDI-системы, включая такие устройства, как синтезаторы, секвенсоры и порты ввода и вывода MIDI. Типичное простое MIDI-приложение может начинаться с вызова одного или нескольких методов MidiSystem, чтобы узнать, какие устройства установлены, и получить нужные для приложения устройства.

В классе также есть методы для чтения файлов, потоков и URL-адресов, содержащих данные стандартных MIDI-файлов или банки звуков. Можно запросить у MidiSystem формат указанного MIDI-файла.

Нельзя создать экземпляр MidiSystem; все методы являются статическими.

Для указания MIDI-устройств по умолчанию можно использовать свойства. Учитываются как системные свойства, так и файл свойств. Файл свойств "sound.properties" считывается из расположения, зависящего от реализации (обычно это каталог conf в каталоге установки Java). Необязательное системное свойство "javax.sound.config.file" можно использовать для указания файла свойств, который будет считан в качестве начальной конфигурации. Если свойство задано и как системное свойство, и в файле свойств, приоритет имеет системное свойство. Если ничего не указано, подходящее устройство выбирается из доступных. Синтаксис файла свойств описан в Properties.load. В следующей таблице перечислены доступные ключи свойств и методы, которые их учитывают:

Ключи свойств MIDI-системы
Ключ свойства Интерфейс Затрагиваемый метод
javax.sound.midi.Receiver Receiver getReceiver()
javax.sound.midi.Sequencer Sequencer getSequencer()
javax.sound.midi.Synthesizer Synthesizer getSynthesizer()
javax.sound.midi.Transmitter Transmitter getTransmitter()
Значение свойства состоит из имени класса поставщика и имени устройства, разделённых знаком решётки ("#"). Имя класса поставщика — это полное имя конкретного класса MIDI device provider. Имя устройства сопоставляется с String, возвращаемым методом getName класса MidiDevice.Info. Можно не указывать имя класса или имя устройства. Если указано только имя класса, завершающий знак решётки необязателен.

Если указан класс поставщика и его можно успешно получить среди установленных поставщиков, список объектов MidiDevice.Info извлекается у поставщика. В противном случае, а также если ни одно из этих устройств не соответствует дальнейшим условиям поиска, список извлекается из getMidiDeviceInfo() и содержит все доступные объекты MidiDevice.Info.

Если указано имя устройства, выполняется поиск в полученном списке объектов MidiDevice.Info: будет возвращён первый объект с соответствующим именем, чей MidiDevice реализует соответствующий интерфейс. Если соответствующий объект MidiDevice.Info не найден или имя устройства не указано, будет возвращено первое подходящее устройство из полученного списка. Для Sequencer и Synthesizer устройство подходит, если оно реализует соответствующий интерфейс; для Receiver и Transmitter устройство подходит, если оно не реализует ни Sequencer, ни Synthesizer и предоставляет как минимум один Receiver или Transmitter соответственно.

Например, свойство javax.sound.midi.Receiver со значением "com.sun.media.sound.MidiProvider#SunMIDI1" приведёт к следующим результатам при вызове getReceiver: если класс com.sun.media.sound.MidiProvider присутствует в списке установленных поставщиков MIDI-устройств, будет возвращено первое устройство Receiver с именем "SunMIDI1". Если оно не найдено, будет возвращено первое устройство Receiver этого поставщика независимо от имени. Если такого устройства нет, будет возвращено первое устройство Receiver с именем "SunMIDI1" из списка всех устройств (возвращаемого методом getMidiDeviceInfo), а если оно не найдено — первое устройство Receiver, которое можно найти в списке всех устройств. Если и это не удастся, будет выброшено исключение MidiUnavailableException.

Краткое описание методов

Модификатор и тип Метод Описание
static MidiDevice getMidiDevice(MidiDevice.Info info)
Получает запрошенное MIDI-устройство.
static MidiDevice.Info[] getMidiDeviceInfo()
Получает массив информационных объектов, представляющих набор всех MIDI-устройств, доступных в системе.
static MidiFileFormat getMidiFileFormat(File file)
Получает формат MIDI-файла указанного File.
static MidiFileFormat getMidiFileFormat(InputStream stream)
Получает формат MIDI-файла данных в указанном входном потоке.
static MidiFileFormat getMidiFileFormat(URL url)
Получает формат MIDI-файла данных по указанному URL-адресу.
static int[] getMidiFileTypes()
Получает набор типов MIDI-файлов, для которых система поддерживает запись файлов.
static int[] getMidiFileTypes(Sequence sequence)
Получает набор типов MIDI-файлов, которые система может записать из указанной последовательности.
static Receiver getReceiver()
Получает MIDI-приёмник от внешнего MIDI-порта или другого устройства по умолчанию.
static Sequence getSequence(File file)
Получает MIDI-последовательность из указанного File.
static Sequence getSequence(InputStream stream)
Получает MIDI-последовательность из указанного входного потока.
static Sequence getSequence(URL url)
Получает MIDI-последовательность по указанному URL-адресу.
static Sequencer getSequencer()
Получает Sequencer по умолчанию, подключённый к устройству по умолчанию.
static Sequencer getSequencer(boolean connected)
Получает Sequencer по умолчанию, при необходимости подключённый к устройству по умолчанию.
static Soundbank getSoundbank(File file)
Создаёт Soundbank, считывая его из указанного File.
static Soundbank getSoundbank(InputStream stream)
Создаёт банк звуков MIDI, считывая его из указанного потока.
static Soundbank getSoundbank(URL url)
Создаёт Soundbank, считывая его из указанного URL-адреса.
static Synthesizer getSynthesizer()
Получает синтезатор по умолчанию.
static Transmitter getTransmitter()
Получает MIDI-передатчик от внешнего MIDI-порта или другого источника по умолчанию.
static boolean isFileTypeSupported(int fileType)
Показывает, поддерживает ли система запись файлов указанного типа MIDI-файла.
static boolean isFileTypeSupported(int fileType, Sequence sequence)
Показывает, можно ли записать MIDI-файл указанного типа из заданной последовательности.
static int write(Sequence in, int type, File out)
Записывает во внешний файл поток байтов, представляющий файл указанного типа MIDI-файла.
static int write(Sequence in, int fileType, OutputStream out)
Записывает в выходной поток поток байтов, представляющий файл указанного типа MIDI-файла.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Показывает, равен ли этот объект какому-либо другому.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или прерывания, либо до истечения заданного промежутка реального времени.

Подробное описание методов

getMidiDeviceInfo

public static MidiDevice.Info[] getMidiDeviceInfo()
Получает массив информационных объектов, представляющих набор всех MIDI-устройств, доступных в системе. Затем возвращённый информационный объект можно использовать для получения соответствующего объекта устройства, вызвав getMidiDevice.
Возвращает:
массив объектов MidiDevice.Info, по одному для каждого установленного MIDI-устройства. Если такие устройства не установлены, возвращается массив длины 0.

getMidiDevice

public static MidiDevice getMidiDevice(MidiDevice.Info info) throws MidiUnavailableException
Получает запрошенное MIDI-устройство.
Параметры:
info — информационный объект устройства, представляющий нужное устройство
Возвращает:
запрошенное устройство
Выбрасывает:
MidiUnavailableException — если запрошенное устройство недоступно из-за ограничений ресурсов
IllegalArgumentException — если объект info не представляет MIDI-устройство, установленное в системе
NullPointerException — если info имеет значение null
См. также:
  • getMidiDeviceInfo()

getReceiver

public static Receiver getReceiver() throws MidiUnavailableException
Получает MIDI-приёмник от внешнего MIDI-порта или другого устройства по умолчанию. Возвращённый приёмник всегда реализует интерфейс MidiDeviceReceiver.

Если задано системное свойство javax.sound.midi.Receiver или оно задано в файле "sound.properties", оно используется для определения устройства, предоставляющего приёмник по умолчанию. Подробности см. в class description.

Если подходящий MIDI-порт недоступен, приёмник получается из установленного синтезатора.

Если собственный приёмник, предоставляемый устройством по умолчанию, не реализует интерфейс MidiDeviceReceiver, он будет обёрнут в класс-обёртку, реализующий интерфейс MidiDeviceReceiver. Соответствующие вызовы методов Receiver будут перенаправляться собственному приёмнику.

Если этот метод завершается успешно, MidiDevice, которому принадлежит Receiver, открывается неявно, если он ещё не открыт. Неявно открытое устройство можно закрыть, вызвав close для возвращённого Receiver. Чтобы освободить системные ресурсы, удерживаемые MidiDevice, необходимо закрыть все открытые экземпляры Receiver. Подробное описание поведения методов открытия и закрытия см. в описании класса MidiDevice.

Возвращает:
приёмник MIDI по умолчанию
Выбрасывает:
MidiUnavailableException — если приёмник по умолчанию недоступен из-за ограничений ресурсов или в системе не установлено устройство, предоставляющее приёмники

getTransmitter

public static Transmitter getTransmitter() throws MidiUnavailableException
Получает MIDI-передатчик от внешнего MIDI-порта или другого источника по умолчанию. Возвращённый передатчик всегда реализует интерфейс MidiDeviceTransmitter.

Если задано системное свойство javax.sound.midi.Transmitter или оно задано в файле "sound.properties", оно используется для определения устройства, предоставляющего передатчик по умолчанию. Подробности см. в class description.

Если собственный передатчик, предоставляемый устройством по умолчанию, не реализует интерфейс MidiDeviceTransmitter, он будет обёрнут в класс-обёртку, реализующий интерфейс MidiDeviceTransmitter. Соответствующие вызовы методов Transmitter будут перенаправляться собственному передатчику.

Если этот метод завершается успешно, MidiDevice, которому принадлежит Transmitter, открывается неявно, если он ещё не открыт. Неявно открытое устройство можно закрыть, вызвав close для возвращённого Transmitter. Чтобы освободить системные ресурсы, удерживаемые MidiDevice, необходимо закрыть все открытые экземпляры Transmitter. Подробное описание поведения методов открытия и закрытия см. в описании класса MidiDevice.

Возвращает:
передатчик MIDI по умолчанию
Выбрасывает:
MidiUnavailableException — если передатчик по умолчанию недоступен из-за ограничений ресурсов или в системе не установлено устройство, предоставляющее передатчики

getSynthesizer

public static Synthesizer getSynthesizer() throws MidiUnavailableException
Получает синтезатор по умолчанию.

Если задано системное свойство javax.sound.midi.Synthesizer или оно задано в файле "sound.properties", оно используется для определения синтезатора по умолчанию. Подробности см. в class description.

Возвращает:
синтезатор по умолчанию
Выбрасывает:
MidiUnavailableException — если синтезатор недоступен из-за ограничений ресурсов или в системе не установлен синтезатор

getSequencer

public static Sequencer getSequencer() throws MidiUnavailableException
Получает секвенсор Sequencer по умолчанию, подключённый к устройству по умолчанию. Возвращённый экземпляр Sequencer подключён к Synthesizer по умолчанию, возвращаемому методом getSynthesizer(). Если Synthesizer недоступен или Synthesizer по умолчанию не удаётся открыть, sequencer подключается к Receiver по умолчанию, возвращаемому методом getReceiver(). Подключение выполняется путём получения экземпляра Transmitter из Sequencer и задания его Receiver. Закрытие и повторное открытие секвенсора восстанавливает подключение к устройству по умолчанию.

Этот метод эквивалентен вызову getSequencer(true).

Если задано системное свойство javax.sound.midi.Sequencer или оно задано в файле "sound.properties", оно используется для определения секвенсора по умолчанию. Подробности см. в class description.

Возвращает:
секвенсор по умолчанию, подключённый к приёмнику по умолчанию
Выбрасывает:
MidiUnavailableException — если секвенсор недоступен из-за ограничений ресурсов, если ни один установленный MidiDevice не предоставляет доступный Receiver или если в системе не установлен секвенсор
См. также:
  • getSequencer(boolean)
  • getSynthesizer()
  • getReceiver()

getSequencer

public static Sequencer getSequencer(boolean connected) throws MidiUnavailableException
Получает секвенсор Sequencer по умолчанию, при необходимости подключённый к устройству по умолчанию.

Если connected имеет значение true, возвращённый экземпляр Sequencer подключается к Synthesizer по умолчанию, возвращаемому методом getSynthesizer(). Если Synthesizer недоступен или Synthesizer по умолчанию не удаётся открыть, sequencer подключается к Receiver по умолчанию, возвращаемому методом getReceiver(). Подключение выполняется путём получения экземпляра Transmitter из Sequencer и задания его Receiver. Закрытие и повторное открытие секвенсора восстанавливает подключение к устройству по умолчанию.

Если connected имеет значение false, возвращённый экземпляр Sequencer не подключён и не имеет открытого Transmitters. Чтобы воспроизвести секвенсор на MIDI-устройстве или Synthesizer, необходимо получить Transmitter и задать его Receiver.

Если задано системное свойство javax.sound.midi.Sequencer или оно задано в файле "sound.properties", оно используется для определения секвенсора по умолчанию. Подробности см. в class description.

Параметры:
connected — указывает, подключён ли возвращаемый Sequencer к Synthesizer по умолчанию
Возвращает:
секвенсор по умолчанию
Выбрасывает:
MidiUnavailableException — если секвенсор недоступен из-за ограничений ресурсов, если в системе не установлен секвенсор или если connected имеет значение true и ни один установленный MidiDevice не предоставляет доступный Receiver
Начиная с:
1.5
См. также:
  • getSynthesizer()
  • getReceiver()

getSoundbank

public static Soundbank getSoundbank(InputStream stream) throws InvalidMidiDataException, IOException
Создаёт банк звуков MIDI, считывая его из указанного потока. Поток должен указывать на допустимый файл банка звуков MIDI. Как правило, поставщикам банков звуков MIDI может потребоваться считать часть данных из потока, прежде чем определить, поддерживается ли он. Эти анализаторы должны уметь устанавливать отметку в потоке, считывать достаточное количество данных, чтобы определить, поддерживается ли поток, и, если он не поддерживается, восстанавливать указатель чтения потока в исходное положение. Если входной поток не поддерживает эти операции, этот метод может завершиться ошибкой IOException.
Параметры:
stream — источник данных банка звуков
Возвращает:
банк звуков
Выбрасывает:
InvalidMidiDataException — если поток не указывает на допустимые данные банка звуков MIDI, распознаваемые системой
IOException — если при загрузке банка звуков произошла ошибка ввода-вывода
NullPointerException — если stream имеет значение null
См. также:
  • InputStream.markSupported()
  • InputStream.mark(int)

getSoundbank

public static Soundbank getSoundbank(URL url) throws InvalidMidiDataException, IOException
Создаёт Soundbank, считывая его по указанному URL. URL должен указывать на допустимый файл банка звуков MIDI.
Параметры:
url — источник данных банка звуков
Возвращает:
банк звуков
Выбрасывает:
InvalidMidiDataException — если URL не указывает на допустимые данные банка звуков MIDI, распознаваемые системой
IOException — если при загрузке банка звуков произошла ошибка ввода-вывода
NullPointerException — если url имеет значение null

getSoundbank

public static Soundbank getSoundbank(File file) throws InvalidMidiDataException, IOException
Создаёт Soundbank, считывая его из указанного File. File должен указывать на допустимый файл банка звуков MIDI.
Параметры:
file — источник данных банка звуков
Возвращает:
банк звуков
Выбрасывает:
InvalidMidiDataException — если File не указывает на допустимые данные банка звуков MIDI, распознаваемые системой
IOException — если при загрузке банка звуков произошла ошибка ввода-вывода
NullPointerException — если file имеет значение null

getMidiFileFormat

public static MidiFileFormat getMidiFileFormat(InputStream stream) throws InvalidMidiDataException, IOException
Получает формат MIDI-файла, содержащегося в указанном входном потоке. Поток должен указывать на допустимые данные MIDI-файла типа, распознаваемого системой.

Этому методу и/или вызываемому им коду может потребоваться считать часть данных из потока, чтобы определить, поддерживается ли их формат. Поэтому реализации может потребоваться установить отметку в потоке, считать достаточно данных, чтобы определить, имеет ли поток поддерживаемый формат, и восстановить указатель чтения потока в исходное положение. Если входной поток не позволяет выполнить эту последовательность операций, этот метод может завершиться ошибкой IOException.

Эта операция может быть выполнена успешно только для файлов типов, которые может анализировать установленный модуль чтения файлов. Она может завершиться ошибкой InvalidMidiDataException даже для допустимых файлов, если совместимый модуль чтения файлов не установлен. Она также завершится ошибкой InvalidMidiDataException, если совместимый модуль чтения файлов установлен, но при определении формата файла возникает ошибка.

Параметры:
stream — входной поток, из которого следует извлечь сведения о формате файла
Возвращает:
объект MidiFileFormat, описывающий формат MIDI-файла
Выбрасывает:
InvalidMidiDataException — если поток не указывает на допустимые данные MIDI-файла, распознаваемые системой
IOException — если при обращении к потоку возникает исключение ввода-вывода
NullPointerException — если stream имеет значение null
См. также:
  • getMidiFileFormat(URL)
  • getMidiFileFormat(File)
  • InputStream.markSupported()
  • InputStream.mark(int)

getMidiFileFormat

public static MidiFileFormat getMidiFileFormat(URL url) throws InvalidMidiDataException, IOException
Получает формат MIDI-файла, данные которого доступны по указанному URL. URL должен указывать на допустимые данные MIDI-файла типа, распознаваемого системой.

Эта операция может быть выполнена успешно только для файлов типов, которые может анализировать установленный модуль чтения файлов. Она может завершиться ошибкой InvalidMidiDataException даже для допустимых файлов, если совместимый модуль чтения файлов не установлен. Она также завершится ошибкой InvalidMidiDataException, если совместимый модуль чтения файлов установлен, но при определении формата файла возникает ошибка.

Параметры:
url — URL, из которого следует извлечь сведения о формате файла
Возвращает:
объект MidiFileFormat, описывающий формат MIDI-файла
Выбрасывает:
InvalidMidiDataException — если URL не указывает на допустимые данные MIDI-файла, распознаваемые системой
IOException — если при обращении к URL возникает исключение ввода-вывода
NullPointerException — если url имеет значение null
См. также:
  • getMidiFileFormat(InputStream)
  • getMidiFileFormat(File)

getMidiFileFormat

public static MidiFileFormat getMidiFileFormat(File file) throws InvalidMidiDataException, IOException
Получает формат MIDI-файла из указанного File. File должен указывать на допустимые данные MIDI-файла типа, распознаваемого системой.

Эта операция может быть выполнена успешно только для файлов типов, которые может анализировать установленный модуль чтения файлов. Она может завершиться ошибкой InvalidMidiDataException даже для допустимых файлов, если совместимый модуль чтения файлов не установлен. Она также завершится ошибкой InvalidMidiDataException, если совместимый модуль чтения файлов установлен, но при определении формата файла возникает ошибка.

Параметры:
file — File, из которого следует извлечь сведения о формате файла
Возвращает:
объект MidiFileFormat, описывающий формат MIDI-файла
Выбрасывает:
InvalidMidiDataException — если File не указывает на допустимые данные MIDI-файла, распознаваемые системой
IOException — если при обращении к файлу возникает исключение ввода-вывода
NullPointerException — если file имеет значение null
См. также:
  • getMidiFileFormat(InputStream)
  • getMidiFileFormat(URL)

getSequence

public static Sequence getSequence(InputStream stream) throws InvalidMidiDataException, IOException
Получает MIDI-последовательность из указанного входного потока. Поток должен указывать на допустимые данные MIDI-файла типа, распознаваемого системой.

Этому методу и/или вызываемому им коду может потребоваться считать часть данных из потока, чтобы определить, поддерживается ли их формат. Поэтому реализации может потребоваться установить отметку в потоке, считать достаточно данных, чтобы определить, имеет ли поток поддерживаемый формат, и восстановить указатель чтения потока в исходное положение. Если входной поток не позволяет выполнить эту последовательность операций, этот метод может завершиться ошибкой IOException.

Эта операция может быть выполнена успешно только для файлов типов, которые может анализировать установленный модуль чтения файлов. Она может завершиться ошибкой InvalidMidiDataException даже для допустимых файлов, если совместимый модуль чтения файлов не установлен. Она также завершится ошибкой InvalidMidiDataException, если совместимый модуль чтения файлов установлен, но при создании объекта Sequence из данных файла возникает ошибка.

Параметры:
stream — входной поток, из которого следует создать Sequence
Возвращает:
объект Sequence, созданный на основе данных MIDI-файла, содержащихся во входном потоке
Выбрасывает:
InvalidMidiDataException — если поток не указывает на допустимые данные MIDI-файла, распознаваемые системой
IOException — если при обращении к потоку возникает исключение ввода-вывода
NullPointerException — если stream имеет значение null
См. также:
  • InputStream.markSupported()
  • InputStream.mark(int)

getSequence

public static Sequence getSequence(URL url) throws InvalidMidiDataException, IOException
Получает MIDI-последовательность по указанному URL. URL должен указывать на допустимые данные MIDI-файла типа, распознаваемого системой.

Эта операция может быть выполнена успешно только для файлов типов, которые может анализировать установленный модуль чтения файлов. Она может завершиться ошибкой InvalidMidiDataException даже для допустимых файлов, если совместимый модуль чтения файлов не установлен. Она также завершится ошибкой InvalidMidiDataException, если совместимый модуль чтения файлов установлен, но при создании объекта Sequence из данных файла возникает ошибка.

Параметры:
url — URL, из которого следует создать Sequence
Возвращает:
объект Sequence, созданный на основе данных MIDI-файла, на который указывает URL
Выбрасывает:
InvalidMidiDataException — если URL не указывает на допустимые данные MIDI-файла, распознаваемые системой
IOException — если при обращении к URL возникает исключение ввода-вывода
NullPointerException — если url имеет значение null

getSequence

public static Sequence getSequence(File file) throws InvalidMidiDataException, IOException
Получает MIDI-последовательность из указанного File. File должен указывать на допустимые данные MIDI-файла типа, распознаваемого системой.

Эта операция может быть выполнена успешно только для файлов типов, которые может анализировать установленный модуль чтения файлов. Она может завершиться ошибкой InvalidMidiDataException даже для допустимых файлов, если совместимый модуль чтения файлов не установлен. Она также завершится ошибкой InvalidMidiDataException, если совместимый модуль чтения файлов установлен, но при создании объекта Sequence из данных файла возникает ошибка.

Параметры:
file — File, из которого следует создать Sequence
Возвращает:
объект Sequence, созданный на основе данных MIDI-файла, на который указывает файл
Выбрасывает:
InvalidMidiDataException — если файл не указывает на допустимые данные MIDI-файла, распознаваемые системой
IOException — если возникает исключение ввода-вывода
NullPointerException — если file имеет значение null

getMidiFileTypes

public static int[] getMidiFileTypes()
Получает набор типов MIDI-файлов, для которых система поддерживает запись файлов.
Возвращает:
массив уникальных типов файлов. Если типы файлов не поддерживаются, возвращается массив длины 0.

isFileTypeSupported

public static boolean isFileTypeSupported(int fileType)
Показывает, поддерживает ли система запись файлов указанного типа MIDI-файла.
Параметры:
fileType — тип файла, для которого проверяется возможность записи
Возвращает:
true, если тип файла поддерживается, иначе false

getMidiFileTypes

public static int[] getMidiFileTypes(Sequence sequence)
Получает набор типов MIDI-файлов, которые система может записать из указанной последовательности.
Параметры:
sequence — последовательность, для которой проверяется поддержка типов MIDI-файлов
Возвращает:
набор уникальных поддерживаемых типов файлов. Если типы файлов не поддерживаются, возвращается массив длины 0.
Выбрасывает:
NullPointerException — если sequence имеет значение null

isFileTypeSupported

public static boolean isFileTypeSupported(int fileType, Sequence sequence)
Показывает, можно ли записать MIDI-файл указанного типа из указанной последовательности.
Параметры:
fileType — тип файла, для которого проверяется возможность записи
sequence — последовательность, для которой проверяется поддержка записи файлов
Возвращает:
true, если тип файла поддерживается для этой последовательности, иначе false
Выбрасывает:
NullPointerException — если sequence имеет значение null

write

public static int write(Sequence in, int fileType, OutputStream out) throws IOException
Записывает в предоставленный выходной поток последовательность байтов, представляющую файл указанного типа MIDI-файла.
Параметры:
in — последовательность, содержащая данные MIDI для записи в файл
fileType — тип файла, который нужно записать в выходной поток
out — поток, в который следует записать данные файла
Возвращает:
количество байтов, записанных в выходной поток
Выбрасывает:
IOException — если возникает исключение ввода-вывода
IllegalArgumentException — если формат файла не поддерживается системой
NullPointerException — если in или out имеют значение null
См. также:
  • isFileTypeSupported(int, Sequence)
  • getMidiFileTypes(Sequence)

write

public static int write(Sequence in, int type, File out) throws IOException
Записывает во внешний файл последовательность байтов, представляющую файл указанного типа MIDI-файла.
Параметры:
in — последовательность, содержащая данные MIDI для записи в файл
type — тип файла, который нужно записать в выходной поток
out — внешний файл, в который следует записать данные файла
Возвращает:
количество байтов, записанных в файл
Выбрасывает:
IOException — если возникает исключение ввода-вывода
IllegalArgumentException — если тип файла не поддерживается системой
NullPointerException — если in или out имеют значение null
См. также:
  • isFileTypeSupported(int, Sequence)
  • getMidiFileTypes(Sequence)

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, общие обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API