浏览器的默认java_java 启动默认浏览器

原来在GUI界面的MailClient中加入了类似OutLook的URL跳转支持,用的是Runtime接口. 执行cmd来启动浏览器打开链接.这样当然有很多缺点了.依赖操作系统也可能会出现一些不安全问题.所以刚才上网查了一下Java SE 6.0的新功能.以前Java SE 6.0刚推出的时候看过新功能的资料.但是当时只用了一个Tray工具栏图标.其他的只是大概知道了他们的存在.

现在又看了一次介绍.本来刚才只发现用System.getProperties()可以获取系统的信息.包括 JDK路径,系统版本等等信息.我需要的是System.getProperty("sun.desktop")获取系统类型,因为我用的是 Windows操作系统,所以返回的String为windows.用System.getProperty("os.name")可以获取更详细的一些信息,我得到的结果为windows xp

现在给大家推荐一些我认为有些作用的字段

user.home 可以获取当前用户的主目录

java.specification.version 获取当前JDK的版本号

java.class.path 获取classpath

user.name 获取当前用户名

java.home 获取JDK路径

sun.os.patch.level 获取系统版本号..也可以说是补丁号 我的显示为Service Pack 2

user.dir 当前程序的主目录

os.arch 显示系统操作系统的类型 我的显示为X86

os.version 显示系统内部版本号

java.io.tmpdir 显示当前系统的临时目录

后来发现Java SE 6.0的新功能比这样先判断操作系统类型再执行特定操作方便多了.因为java.awt.Desktop类的 java.awt.Desktop.isDesktopSupported()可以获取当前系统是否支持java awt桌面扩展.如果支持可以获取当前系统的Desktop

java.awt.Desktop dp = java.awt.Desktop.getDesktop();

dp.browse(java.net.URI);

就可以启动系统默认的浏览器,所以也就解决了跨平台的问题.下面是示例代码:

public class TestSystem {

public static void main(String[] args) {

//判断当前系统是否支持Java AWT Desktop扩展

if(java.awt.Desktop.isDesktopSupported()){

try {

//创建一个URI实例

java.net.URI uri = java.net.URI.create(" http://www.163.com/");

//获取当前系统桌面扩展

java.awt.Desktop dp = java.awt.Desktop.getDesktop();

//判断系统桌面是否支持要执行的功能

if(dp.isSupported(java.awt.Desktop.Action.BROWSE)){

//获取系统默认浏览器打开链接

dp.browse(uri);

}

} catch(java.lang.NullPointerException e){

//此为uri为空时抛出异常

} catch (java.io.IOException e) {

//此为无法获取系统默认浏览器

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值