Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: GUI и Java FX приложения > Запустить файл из JTable


Автор: Vipash 19.9.2016, 21:47
Всем привет. Есть таблица (JTable), в ней данные. При двойном клике на строку создается экземпляр класса File, причем используется конструктор, где выбранная строка и указывает путь к файлу (File f = new File(path);). Таким образом создали объект класса File. Вопрос: как осуществить запуск этого файла, т.е., если это видеофайл, то должен запускаться видео проигрыватель, если это файл txt, то должен открываться блокнот, ну и так далее... Подскажите, кто, что знает, нигде не могу найти. smile 

Автор: a0730 21.9.2016, 06:31
По типу файла определяется приложение.
Формируется строка аргументов.
Смотри класс ProcessBuilder.


Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Zapustit-fayl-iz-JTable-id57e032e2e2dbf608e205ee52#findElement_E7045_57e1ff1038359f07123c9323_0

Автор: a0730 21.9.2016, 06:31
По типу файла определяется приложение.
Формируется строка аргументов.
Смотри класс ProcessBuilder.


Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Zapustit-fayl-iz-JTable-id57e032e2e2dbf608e205ee52#findElement_E7045_57e1ff1038359f07123c9323_0

Автор: a0730 21.9.2016, 06:31
По типу файла определяется приложение.
Формируется строка аргументов.
Смотри класс ProcessBuilder.


Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Zapustit-fayl-iz-JTable-id57e032e2e2dbf608e205ee52#findElement_E7045_57e1ff1038359f07123c9323_0

Автор: a0730 21.9.2016, 06:31
По типу файла определяется приложение.
Формируется строка аргументов.
Смотри класс ProcessBuilder.


Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Zapustit-fayl-iz-JTable-id57e032e2e2dbf608e205ee52#findElement_E7045_57e1ff1038359f07123c9323_0

Автор: a0730 21.9.2016, 06:31
По типу файла определяется приложение.
Формируется строка аргументов.
Смотри класс ProcessBuilder.


Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Zapustit-fayl-iz-JTable-id57e032e2e2dbf608e205ee52#findElement_E7045_57e1ff1038359f07123c9323_0

Автор: Vipash 21.9.2016, 16:17
a0730, спасибо
наткнулся на следующее решение
Код

ProcessBuilder p = new ProcessBuilder();
        p.command("notepad.exe", "D:\\save.txt");
        p.start();

я так понимаю, нам надо заранее указывать какое приложение должно запускать наш файл, но пользователь , к примеру, может запустить и видео файл... и, если я правильно понял, то автоматизировать это никак нельзя и следует через оператор if указывать все приложения, которые будем использовать (notepad.exe, Excel.exe и т.д.)?


Автор: w1nd 23.9.2016, 01:28
нет, надо оставить этот выбор операционке:
Код

ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "file.txt");
Process process = pb.start();

Автор: Vipash 26.9.2016, 19:37
w1nd,   smile  мерси, как же все оказалось просто... если я правильно понимаю, то это будет работать только для ОС под виндовс!!! а что делать с другими??


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)