在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 optional
mailto
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();
}
}