2013-04-07 2 views
0

Я хочу знать, есть ли способ открыть mp3-файлы с помощью Windows Media Player и VLC Media Player. У меня есть путь к файлу, сохраненному как String, и мне было интересно, могу ли я использовать его для открытия файла в любом из упомянутых выше приложений. Я понимаю, что один из способов сделать это - это использовать класс Desktop, но это открывает файл, используя приложение по умолчанию, которое является проигрывателем Windows Media в моем случае. Как открыть файл в медиаплеере VLC?Открыть mp3-файл с помощью конкретных приложений java

ответ

1

попробовать

Runtime.getRuntime().exec("<your vlc path> <your file>"); 

И.Е.

Runtime.getRuntime().exec("\"C:\\Program Files (x86)\\VideoLAN\VLC\\vlc.exe\" abc.mp3"); 

Пробовал и работает

+0

Этот метод работает только в том случае, если путь к файлу не содержит пробелов. Как изменить это для работы с любым именем файла? 'Процесс r = Runtime.getRuntime(). Exec (" \ "C: \\ Program Files \\ VideoLAN \\ VLC \\ vlc.exe \" "+ path);' Переменная path содержит пробелы. – user1909680

+0

@ user1909680 Просто добавьте двойные кавычки вокруг вашего пути 'Process r = Runtime.getRuntime(). Exec (" \ "C: \\ Program Files \\ VideoLAN \\ VLC \\ vlc.exe \" \ "" + path + " \ ""); ', если вы не знаете, что такое' '' ', это escape-символ для' '', он сообщает компилятору, что эта двойная кавычка не для закрытия строки, но для добавления '' 'к нему – BackSlash

0

Вы должны знать путь к VLC и/или WMP. Тогда вы можете использовать класс Runtime.

Process p = Runtime.getRuntime().exec("c:/vlc/vlc.exe " + mp3FileName); 
0

Судя по Desktop.open apidoc и Desktop tutorial это выглядит как открытый способ может только открыть файл в их соответствующей программе по умолчанию.

Итак, у вас есть (возможно) два варианта здесь:

  • access the registry и изменить ассоциацию по умолчанию (не хороший один)
  • может попытаться дать отверстие URI и его через браузер, который мощь приведет к открытию файла в желаемой программе. Однако, похоже, что схема file является единственным приемлемым решением, которое, скорее всего, будет открыто в программе по умолчанию. Существует схема mms, но она используется для потоковой передачи видео, и, скорее всего, она, скорее всего, откроется в программе по умолчанию.

linkRuntime.exec решение для windows, linux и osx вариант.

Смежные вопросы