Откройте документ программно в портативном виде - PullRequest
1 голос
/ 13 марта 2012

работает ли следующая команда под Unix и Linux?

ProcessBuilder prcbdoc = new ProcessBuilder("cmd","/C","start", "Documentation.doc");       
            prcbdoc.directory(new File(currentDir+"/docs/"));
            prcbdoc.start();

Я не уверен из-за "cmd" "/c"

€:

Какой будет эквивалентная команда Linux CentOS?

Ответы [ 3 ]

2 голосов
/ 13 марта 2012

Нет, это не работает.Из документации Java:

a command , список строк, который указывает на вызываемый файл внешней программы и его аргументы, если таковые имеются. Какие списки строк представляют допустимую команду операционной системы, зависит от системы .Например, обычно каждый концептуальный аргумент является элементом в этом списке, но существуют операционные системы, в которых программы, как ожидается, сами токенизируют строки командной строки - в такой системе реализация Java может требовать, чтобы команды содержали ровно два элемента.

Чтобы открыть документ в переносном режиме, используя AWT :

if (Desktop.isDesktopSupported())
 Desktop.getDesktop().open(documentPath);
1 голос
/ 13 марта 2012

Нет. cmd и /c относятся только к окнам.

1 голос
/ 13 марта 2012

Нет, это не будет работать в Linux (или любом другом Unix, или на Mac) из-за «cmd / c» и «запуска». На Mac вы бы сказали "open Documentation.doc". Различные рабочие столы Linux имеют свои собственные версии команды start / open: gnome-open для рабочего стола Gnome, и полустандарт FreeDesktop xdg-open - некоторые возможности.

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