Запустить файл с Java - PullRequest
8 голосов
/ 11 мая 2009

Я хочу запустить файл (документ) из Java-программы и выполнить следующие требования:

  • Метод должен применяться на системах Mac, Win и Linux
  • Мне не разрешено использовать "Runtime.getRuntime (). Exec (" cmd.exe / C + "filename");
  • Файл, который я запускаю, должен быть .doc / .docx / .rtf

Файл создается во время выполнения, является результатом создания отчета. Есть хорошие практики?

Ответы [ 2 ]

21 голосов
/ 11 мая 2009

Использование Java Desktop API .

Desktop.getDesktop().open(new File(yourfilename));
4 голосов
/ 11 мая 2009

Если вы используете 1.6, используйте Desktop API согласно совету mad-j. Если вы используете более старую виртуальную машину (1.5 или более раннюю), вам нужно написать собственный код для конкретной платформы, чтобы сделать это.

На маке,

Runtime.getRuntime().exec(new String[] {"open", pathToFile});

На окнах

Runtime.getRuntime().exec(new String[] {"cmd.exe", "/C", pathToFile});

Возможно, вам придется покинуть путь в Windows.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...