2015-04-25 5 views
0

У меня есть проблема с этим кодом. Пожалуйста, помогите мне отзыв:Запустить url на Java по командной строке

Runtime.getRuntime().exec("cmd.exe /c start chrome " + url); 

Этот код в порядке, если я запускаю URL, который не содержит параметр, но я поставил параметр на этот адрес, ссылка не работает, и не вижу параметр на URL. благодаря

+3

Вставьте URL-адрес, который вызывает проблему. Я думаю, что проблема может быть связана с тем, что вы не сбрасываете косые черты. – Urban

+0

Этот URL-адрес работает локально. Пример: http://127.0.0.1/acb/display.do?user=abc&password=123 – baopham

ответ

2

Используйте это:

Desktop.getDesktop.browse(uri); 
+1

Этот код используется для браузера по умолчанию. Я хочу запустить URL-адрес в нескольких браузерах. Благодарю. – baopham

2

Попробуйте это:

Runtime.getRuntime().exec("cmd.exe /c start chrome \"" + url + "\""); 
+0

Я постараюсь запустить его. thanks =) – baopham

0

URL-адрес содержит различные символы, которые CMD могут думать, незаконно использовать. Например

cd new folder 

является незаконным, поскольку существует пространство между так и должно использовать

cd "new folder" 

Точно так же вы должны заключить URL в «», чтобы заставить его работать. Таким образом, вы должны использовать:

Runtime.getRuntime().exec("cmd.exe /c start chrome \"" + url + "\""); 

Или использовать это, чтобы непосредственно запустить URL в браузере по умолчанию:

Desktop.getDesktop.browse(uri); 

Примечание везде, где есть \ в URL вы должны использовать \\ вместо него. Так что java не ошибается в качестве escape-последовательности.

+2

* «Поэтому везде, где есть/в URL-адресе, вы должны использовать // вместо него». * Нет, это только случай обратного слэша (\\). –