java openurl不弹出新页面_Java调用浏览器打开指定页面的5种方法(最全)
package com.xbz;
import java.awt.*;
import java.lang.reflect.Method;
import java.net.URI;
import java.util.Map;
/**
* @title java调用浏览器打开指定页面
* @author Xingbz
*/
public class XDemo {
private static void browse1(String url) throws Exception {
String osName = System.getProperty("os.name", "");// 获取操作系统的名字
if (osName.startsWith("Windows")) {// windows
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url);
} else if (osName.startsWith("Mac OS")) {// Mac
Class fileMgr = Class.forName("com.apple.eio.FileManager");
Method openURL = fileMgr.getDeclaredMethod("openURL", String.class);
openURL.invoke(null, url);
} else {// Unix or Linux
String[] browsers = {"firefox", "opera", "konqueror", "epiphany", "mozilla", "netscape"};
String browser = null;
for (int count = 0; count < browsers.length && browser == null; count++) { // 执行代码,在brower有值后跳出,
// 这里是如果进程创建成功了,==0是表示正常结束。
if (Runtime.getRuntime().exec(new String[]{"which", browsers[count]}).waitFor() == 0) {
browser = browsers[count];
}
}
if (browser == null) {
throw new RuntimeException("未找到任何可用的浏览器");
} else {// 这个值在上面已经成功的得到了一个进程。
Runtime.getRuntime().exec(new String[]{browser, url});
}
}
}
/**
* @title 使用默认浏览器打开
* @author Xingbz
*/
private static void browse2(String url) throws Exception {
Desktop desktop = Desktop.getDesktop();
if (Desktop.isDesktopSupported() && desktop.isSupported(Desktop.Action.BROWSE)) {
URI uri = new URI(url);
desktop.browse(uri);
}
}
/**
* @title 通过获取环境变量的浏览器路径, 然后启动浏览器
* @author Xingbz
*/
private static void browse3(String url) throws Exception {
String firefox = "C:\\Program Files\\Mozilla Firefox\\firefox.exe";
Map map = System.getenv();
for (Object key : map.keySet()) {
String value = (String) map.get(key);
if (value.contains("firefox.exe")) {
firefox = value;
break;
}
}
Runtime.getRuntime().exec(new String[]{firefox, url});
}
/**
* @title 启用cmd运行IE的方式来打开网址
* @author Xingbz
*/
private static void browse4(String url) throws Exception {
Runtime.getRuntime().exec("cmd /c start " + url);//启用cmd运行默认浏览器
// Runtime.getRuntime().exec("cmd /c start iexplore " + url);//启用cmd运行IE
}
/**
* @title 利用java.lang.ProcessBuilder类创建系统进程的能力,通过浏览器地址启动浏览器,并将网址作为参数传送给浏览器。
* ProcessBuilder类是J2SE1.5在java.lang中新添加的一个新类,此类用于创建操作系统进程,它提供一种启动和管理进程(也就是应用程序)的方法。
* @author Xingbz
*/
private static void browse5(String url) throws Exception {
ProcessBuilder proc = new ProcessBuilder("C:\\Program Files\\Mozilla Firefox\\firefox.exe",
url);
proc.start();
}
public static void main(String[] args) throws Exception {
// browse1("https://blog.csdn.net/xingbaozhen1210");
// browse2("https://blog.csdn.net/xingbaozhen1210");
// browse3("https://blog.csdn.net/xingbaozhen1210");
// browse4("https://blog.csdn.net/xingbaozhen1210");
browse5("https://blog.csdn.net/xingbaozhen1210");
}
}
java openurl不弹出新页面_Java调用浏览器打开指定页面的5种方法(最全)相关推荐
- Java调用浏览器打开指定页面的5种方法(最全)
package com.xbz;import java.awt.*; import java.lang.reflect.Method; import java.net.URI; import java ...
- java调用指定浏览器_Java调用浏览器打开网页完整实例
本文实例讲述了java调用浏览器打开网页的方法.分享给大家供大家参考.具体实现方法如下: package com.yifang.demo; import java.io.file; public cl ...
- java调用浏览器_Java调用浏览器打开网页实例完整版
Java调用浏览器打开网页实例完整版 引导语:如何用Java调用浏览器打开网页呢?以下是百分网小编分享给大家的`Java调用浏览器打开网页实例完整版,欢迎阅读! package com.yifang. ...
- java打开浏览器_Java调用浏览器打开网页完整实例
这篇文章主要介绍了Java调用浏览器打开网页的方法,以完整实例形式分析了java打开网页的相关技巧,需要的朋友可以参考下 本文实例讲述了Java调用浏览器打开网页的方法.分享给大家供大家参考.具体实现 ...
- java list 合并 重复的数据_Java ArrayList合并并删除重复数据3种方法
首页 > 基础教程 > 集合框架 > ArrayList类 Java ArrayList合并并删除重复数据3种方法 1. 通过List自带方法list.retainAll() Lis ...
- java中map如何实现遍历_Java中如何遍历Map对象的4种方法
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...
- vc调用浏览器打开指定网址页面
2019独角兽企业重金招聘Python工程师标准>>> ShellExecute(NULL,NULL,L"http://www.shudaji.com/",NUL ...
- selenium+python,解决selenium弹出新页面,无法定位元素的问题(报错:Unable to locate element:元素)
selenium+python,解决selenium弹出新页面,无法定位元素的问题(报错:Unable to locate element:元素) 参考文章: (1)selenium+python,解 ...
- js弹出新页面并传值
showModalDialog 详细使用 基本介绍:showModalDialog() (IE 4+ 支持)showModelessDialog() (IE 5+ 支持)window.showModa ...
最新文章
- zz职位是有负面作用的
- Oracle 解决4031错误
- 技术分享:什么是CDN鉴权(by光网烈火)
- python查询缺失值所在位置_Python Pandas找到缺失值的位置方法
- NanoDet:这是个小于4M超轻量目标检测模型
- OK6410开发板学习之外部中断(按键点亮led和蜂鸣器)
- 最简单的 RabbitMQ 监控方法 - 每天5分钟玩转 OpenStack(158)
- Tableau可视化学习笔记:day11-12
- 数字图像处理(matlab版)第三版,数字图像处理及MATLAB实现(第3版)
- 2022软工K班个人编程任务
- Eclipse svn插件安装详细教程
- 开源一套DUI控件源码
- html如何让标签居中显示,HTML怎么让标签居中
- 24点扑克游戏详细解析附代码
- 富士施乐3065扫描教程_富士施乐打印机3065怎么连接电脑扫描
- ThinkPad系统重装步骤
- TLS1.3TLS1.2形式化分析
- “浅尝”JavaScript设计模式
- matlab 打开xml文件怎么打开方式,导入 XML 文档
- php怎么改字体大小,phpstorm修改字体和大小
热门文章
- 发那科机器人控制柜示教器不通电_邳州FANUC示教器维修维修{机器人故障免费检测}...
- 电脑切换应用和软件分屏
- 企业版微信小程序申请流程
- MySQL获取表行数
- 离散傅里叶级数展开及逼近
- iOS开发证书申请教程(udid真机调试测试)
- JAVA/IOS下emjoi表情的截取
- 声明一个CPU类,包含等级(rank),频率(frequency),电压(voltage)等属性
- 使用 ESP32 + HaaS Python 打造智能温湿度UI面板
- 基于Matlab虹膜图像的外边界定位