java程序中指定某個(gè)瀏覽器打開(kāi)的實(shí)現(xiàn)方法
本文主要介紹的是利用java程序打開(kāi)指定某個(gè)的瀏覽器,文中分享了四種實(shí)現(xiàn)方法,感興趣的朋友們下面來(lái)一起看看吧。
方法一:
package com.test; import java.lang.reflect.Method; //實(shí)現(xiàn)打開(kāi)瀏覽器并跳到指定網(wǎng)址的類 public class BareBonesBrowserLaunch { public static void openURL(String url) { try { browse(url); } catch (Exception e) { } } private static void browse(String url) throws Exception { //獲取操作系統(tǒng)的名字 String osName = System.getProperty("os.name", ""); if (osName.startsWith("Mac OS")) { //蘋果的打開(kāi)方式 Class fileMgr = Class.forName("com.apple.eio.FileManager"); Method openURL = fileMgr.getDeclaredMethod("openURL", new Class[] { String.class }); openURL.invoke(null, new Object[] { url }); } else if (osName.startsWith("Windows")) { //windows的打開(kāi)方式。 Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url); } else { // Unix or Linux的打開(kāi)方式 String[] browsers = { "firefox", "opera", "konqueror", "epiphany", "mozilla", "netscape" }; String browser = null; for (int count = 0; count < browsers.length && browser == null; count++) //執(zhí)行代碼,在brower有值后跳出, //這里是如果進(jìn)程創(chuàng)建成功了,==0是表示正常結(jié)束。 if (Runtime.getRuntime().exec(new String[] { "which", browsers[count] }).waitFor() == 0) browser = browsers[count]; if (browser == null) throw new Exception("Could not find web browser"); else //這個(gè)值在上面已經(jīng)成功的得到了一個(gè)進(jìn)程。 Runtime.getRuntime().exec(new String[] { browser, url }); } } } //主方法 測(cè)試類 public static void main(String[] args) { // 這里填寫你的網(wǎng)址 String url = "xxx"; BareBonesBrowserLaunch.openURL(url); }
方法二:
使用默認(rèn)瀏覽器打開(kāi):
String site = "www.baidu.com"; try { Desktop desktop = Desktop.getDesktop(); if (desktop.isDesktopSupported() && desktop.isSupported(Desktop.Action.BROWSE)) { URI uri = new URI(site); desktop.browse(uri); } } catch (IOException ex) { System.out.println(ex); } catch (URISyntaxException ex) { System.out.println(ex); }
方法三:
通過(guò)獲取環(huán)境變量的瀏覽器路徑,然后啟動(dòng)瀏覽器
String firefox="C:\\Program Files\\Mozilla Firefox\\firefox.exe"; Map map = System.getenv(); for(Iterator itr = map.keySet().iterator();itr.hasNext();){ String value = (String)map.get((String)itr.next()); if (value.contains("firefox.exe")) { firefox=value; break; } } Runtime.getRuntime().exec(new String[] {firefox, "www.baidu.com" });
方法四:
js方式:
<script type="text/javascript"> window.onload=function(){ var WSH = new ActiveXObject("WScript.Shell"); WSH.Run("chrome.exe www.baidu.com"); } </script>
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
淺談Java中Map和Set之間的關(guān)系(及Map.Entry)
這篇文章主要介紹了淺談Java中Map和Set之間的關(guān)系(及Map.Entry),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09java easyPOI實(shí)現(xiàn)導(dǎo)出一對(duì)多數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了java如何利用easyPOI實(shí)現(xiàn)導(dǎo)出一對(duì)多數(shù)據(jù),并且可以設(shè)置邊框、字體和字體大小,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12Java中OAuth2.0第三方授權(quán)原理與實(shí)戰(zhàn)
本文主要介紹了Java中OAuth2.0第三方授權(quán)原理與實(shí)戰(zhàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Java客戶端服務(wù)端上傳接收文件實(shí)現(xiàn)詳解
這篇文章主要介紹了Java客戶端服務(wù)端上傳接收文件實(shí)現(xiàn)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07SpringBoot JPA 表關(guān)聯(lián)查詢實(shí)例
本篇文章主要介紹了SpringBoot JPA 表關(guān)聯(lián)查詢實(shí)例,使用JPA原生的findBy語(yǔ)句實(shí)現(xiàn),具有一定的參考價(jià)值,有興趣的可以了解一下。2017-04-04SpringMVC的處理器攔截器HandlerInterceptor詳解
這篇文章主要介紹了SpringMVC的處理器攔截器HandlerInterceptor詳解,SpringWebMVC的處理器攔截器,類似于Servlet開(kāi)發(fā)中的過(guò)濾器Filter,用于處理器進(jìn)行預(yù)處理和后處理,需要的朋友可以參考下2024-01-01