在Jdk1.6以后新增加了一个类--DeskTop,在JDK中它的解释是这样的:

The Desktop class allows a Java application to launch associated applications registered on the native desktop to handle a URI or a file.

Supported operations include:

  • launching the user-default browser to show a specified URI;
  • launching the user-default mail client with an optionalmailto URI;
  • launching a registered application to open, edit or print a specified file.  
这段话的意思是:
      DeskTop类允许一个Java应用程序启动本地的另一个应用程序去处理URI或文件请求,这个类中包含了如下的几个方法:
   1.启动用户默认的浏览器显示指定的URI链接
   2.启动用户默认的邮件客户端发送URI指定的邮件
   3.启动一个注册应用程序(本地安装了的应用程序)去打开,编辑或打印一个指定的文件

下面,给出一段测试代码说明这个类的功能和使用方法,代码中附有注释:

    package com.brucezhang.desktop;  

    import java.awt.Desktop;
import java.io.File;
import java.net.URI; public class DeskTopTest { private static Desktop desktop; //使用默认的浏览器打开网页
public static void browse(){
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
//URI指定网页的地址
desktop.browse(new URI("http://blog.csdn.net/dlutbrucezhang?viewmode=contents"));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
} //编辑文件
public static void edit(){
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.edit(new File("D:\\BruceZhang.txt"));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
} //打开文件,它和编辑文件的过程类似,都是能看到文件的显示
public static void open() {
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.open(new File("D:\\BruceZhang.txt"));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
} //打印指定的文件
public static void print() {
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.print(new File("D:\\BruceZhang.txt"));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
} /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub browse();
edit();
open();
print();
} }

Java中的DeskTop类使用介绍的更多相关文章

  1. Java中的DeskTop类

        在Jdk1.6以后新增加了一个类--DeskTop,在JDK中它的解释是这样的: The Desktop class allows a Java application to launch a ...

  2. Java中的Unsafe类111

    1.Unsafe类介绍 Unsafe类是在sun.misc包下,不属于Java标准.但是很多Java的基础类库,包括一些被广泛使用的高性能开发库都是基于Unsafe类开发的,比如Netty.Hadoo ...

  3. Java 中15种锁的介绍:公平锁,可重入锁,独享锁,互斥锁,乐观锁,分段锁,自旋锁等等

    Java 中15种锁的介绍 Java 中15种锁的介绍:公平锁,可重入锁,独享锁,互斥锁,乐观锁,分段锁,自旋锁等等,在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类 ...

  4. Java中的Collections类

    转载:https://blog.csdn.net/yangxingpa/article/details/80515963 从[Java]Java中的Collections类——Java中升级版的数据结 ...

  5. java中的Atomic类

    文章目录 问题背景 Lock 使用Atomic java中的Atomic类 问题背景 在多线程环境中,我们最常遇到的问题就是变量的值进行同步.因为变量需要在多线程中进行共享,所以我们必须需要采用一定的 ...

  6. Java中15种锁的介绍

    作者:搜云库技术团队 原文:https://segmentfault.com/a/1190000017766364 1. Java 中15种锁的介绍 在读很多并发文章中,会提及各种各样锁如公平锁,乐观 ...

  7. 带有静态方法的类(java中的math类)

    带有静态方法的类通常(虽然不一定是这样)不打算被初始化. 可以用私有构造函数来限制非抽象类被初始化. 例如,java中的math类.它让构造函数标记为私有,所以你无法创建Math的实例.但Math类却 ...

  8. java中的File类

    File类 java中的File类其实和文件并没有多大关系,它更像一个对文件路径描述的类.它即可以代表某个路径下的特定文件,也可以用来表示该路径的下的所有文件,所以我们不要被它的表象所迷惑.对文件的真 ...

  9. Java基础(43):Java中的Object类与其方法(转)

    Object类 java.lang.Object java.lang包在使用的时候无需显示导入,编译时由编译器自动导入. Object类是类层次结构的根,Java中所有的类从根本上都继承自这个类. O ...

随机推荐

  1. LA 4329

    第一次敲树状数组  因为一个小错误 wa了 n 多遍  终于ac  太不容易了 /*********************************************************** ...

  2. 使用shell脚本获取虚拟机中cpu使用率(读/proc/statc)

    #!/bin/bash interval= cpu_num=`-] -c` start_idle=() start_total=() cpu_rate=() cpu_rate_file=./`host ...

  3. 在实体注解OneToMany时,要加上mappedby,避免产生中间表。

    在实体注解OneToMany时,要加上mappedby,避免产生中间表.

  4. Intellij 导入play framework 项目

    新建一个项目 play new helloworld IshallbeThatIshallbe:~ iamthat$ mkdir temp IshallbeThatIshallbe:~ iamthat ...

  5. cojs 白树黑 黑树白 题解报告

    黑树白 首先如果不是强制在线,这个题用莫队+树状数组就可以在O(n*sqrt(n)*log(n))的时间内搞定 如果没有修改操作,可以直接上主席树就可以辣 我们考虑修改操作,某一个修改操作对于某一个查 ...

  6. Using the Repository Pattern with ASP.NET MVC and Entity Framework

    原文:http://www.codeguru.com/csharp/.net/net_asp/mvc/using-the-repository-pattern-with-asp.net-mvc-and ...

  7. NSDate & NSDateFormatter

    #import <Foundation/Foundation.h>   int main(int argc, const char * argv[]) {    @autoreleasep ...

  8. PostgreSql中如何kill掉正在执行的sql语句

    虽然可以使用 kill -9 来强制删除用户进程,但是不建议这么去做. 因为:对于执行update的语句来说,kill掉进程,可能会导致Postgres进入到recovery mode 而在recov ...

  9. js问题总结

    .removeClass(" ") 移除一个css样式 $("#popUpBox i").removeClass("channel_icon" ...

  10. ubuntu set host name

    http://wiki.joyent.com/wiki/display/jpc2/Setting+the+Host+Name+on+a+Linux+VM Set the host name in th ...