public class Desktop extends Object
Desktop
类允许java应用程序启动相关的应用程序注册的本地桌面操作
URI
或文件。
支持的操作包括:
mailto
URI启动用户默认的邮件客户端;此类提供了对应于这些操作的方法。的方法寻找相关的应用程序在当前平台上注册,并启动它来处理一个URI或文件。如果没有相关的应用程序或相关的应用程序无法启动,则抛出一个异常。
一个应用程序注册到一个URI或文件类型;例如,在"sxi"
文件扩展名通常是注册StarOffice。注册、访问和启动关联的应用程序的机制是依赖于平台的。
每一个操作动作类型的Desktop.Action
班代表。
注意:当一些动作被调用和关联的应用程序执行时,它将执行相同的系统作为java应用程序启动。
Modifier and Type | Class and Description |
---|---|
static class |
Desktop.Action
表示动作类型。
|
Modifier and Type | Method and Description |
---|---|
void |
browse(URI uri)
启动默认的浏览器显示一个
URI 。
|
void |
edit(File file)
启动相关的编辑器应用程序,并打开一个编辑文件。
|
static Desktop |
getDesktop()
返回当前浏览器上下文的
Desktop 实例。
|
static boolean |
isDesktopSupported()
测试这个类是否在当前平台上支持。
|
boolean |
isSupported(Desktop.Action action)
测试一个动作是否在当前平台上支持。
|
void |
mail()
启动用户默认邮件客户端的邮件组合窗口。
|
void |
mail(URI mailtoURI)
启动邮件撰写窗口的用户默认的邮件客户端,填充的
mailto: URI指定的消息字段。
|
void |
open(File file)
启动相关的应用程序打开文件。
|
void |
print(File file)
使用相关应用程序的打印命令,打印一个与本机桌面打印设备的文件。
|
public static Desktop getDesktop()
Desktop
实例。在一些平台的桌面API可能不支持;使用
isDesktopSupported()
方法确定当前的桌面支持。
HeadlessException
-如果
GraphicsEnvironment.isHeadless()
返回
true
UnsupportedOperationException
当前平台上不支持
isDesktopSupported()
,
GraphicsEnvironment.isHeadless()
public static boolean isDesktopSupported()
getDesktop()
检索实例。
true
如果这个类是支持目前的平台;
false
否则
getDesktop()
public boolean isSupported(Desktop.Action action)
即使平台支持一个行动,一个文件或URI可能没有注册申请的行为。例如,大多数的平台支持Desktop.Action.OPEN
行动。但对于一个特定的文件,可能没有一个注册的应用程序打开它。在这种情况下,isSupported(java.awt.Desktop.Action)
可能返回true
,但相应的动作方法将抛出一个IOException
。
action
-指定
Desktop.Action
true
如果指定的行动支持当前的平台;
false
否则
Desktop.Action
public void open(File file) throws IOException
如果指定的文件是一个目录,则启动当前平台的文件管理器打开它。
file
-文件打开与相关应用
null
file
NullPointerException
IllegalArgumentException
-如果指定的文件不存在
UnsupportedOperationException
-如果当前平台不支持
Desktop.Action.OPEN
行动
IOException
-如果指定文件没有关联的应用程序或相关的应用程序无法启动
SecurityException
-如果存在一个安全管理及其
SecurityManager.checkRead(java.lang.String)
方法拒绝读取该文件,或否认
AWTPermission("showWindowWithoutWarningBanner")
许可,或调用线程不允许创建子进程
AWTPermission
public void edit(File file) throws IOException
file
-文件可打开编辑
NullPointerException
-如果指定的文件
null
IllegalArgumentException
-如果指定的文件不存在
UnsupportedOperationException
-如果当前平台不支持
Desktop.Action.EDIT
行动
IOException
-如果指定文件没有关联的编辑器,或相关的应用程序无法启动
SecurityException
-如果存在一个安全管理及其
SecurityManager.checkRead(java.lang.String)
方法拒绝读取该文件,或
SecurityManager.checkWrite(java.lang.String)
方法拒绝写访问文件,或否认
AWTPermission("showWindowWithoutWarningBanner")
许可,或调用线程不允许创建子进程
AWTPermission
public void print(File file) throws IOException
file
-待打印文件
NullPointerException
-如果指定的文件
null
IllegalArgumentException
-如果指定的文件不存在
UnsupportedOperationException
-如果当前平台不支持
Desktop.Action.PRINT
行动
IOException
-如果指定文件没有关联的应用程序,可以用来打印
SecurityException
-如果存在一个安全管理及其
SecurityManager.checkRead(java.lang.String)
方法拒绝读取该文件,或其
SecurityManager.checkPrintJobAccess()
方法拒绝允许打印文件,或者调用线程不允许创建子进程
public void browse(URI uri) throws IOException
URI
。如果默认的浏览器是不能够处理指定的
URI
,申请注册处理指定类型的
URIs
调用。从应用程序的
URI
协议和路径确定,由
URI
类定义。
如果调用线程没有必要的权限,这是从一个小程序调用,使用AppletContext.showDocument()
。同样,如果调用不必要的权限,这是从一个java web应用程序调用的使用开始,BasicService.showDocument()
。
uri
的URI是在用户的默认浏览器显示
null
uri
NullPointerException
UnsupportedOperationException
-如果当前平台不支持
Desktop.Action.BROWSE
行动
IOException
-如果用户的默认浏览器是没有发现,或者不能被启动,或默认处理程序无法启动应用程序
SecurityException
-如果存在一个安全管理和否认
AWTPermission("showWindowWithoutWarningBanner")
许可,或调用线程不允许创建子进程;而不是内部调用applet或应用java web开始
IllegalArgumentException
-如果必要的权限不可用和URI不能转换为
URL
URI
,
AWTPermission
,
AppletContext
public void mail() throws IOException
UnsupportedOperationException
-如果当前平台不支持
Desktop.Action.MAIL
行动
IOException
-如果用户默认邮件客户端没有找到,或者不能被启动
SecurityException
-如果存在一个安全管理和否认
AWTPermission("showWindowWithoutWarningBanner")
许可,或调用线程不允许创建子进程
AWTPermission
public void mail(URI mailtoURI) throws IOException
mailto:
URI指定的消息字段。
一个mailto:
URI可以指定消息字段包括空”,空“CC”、“空”,空主体”身体”,等看到The mailto URL scheme (RFC 2368)为mailto:
URI规范细节。
mailtoURI
-指定
mailto:
URI
NullPointerException
-如果指定的URI是
null
IllegalArgumentException
-如果URI方案是不
"mailto"
UnsupportedOperationException
-如果当前平台不支持
Desktop.Action.MAIL
行动
IOException
-如果用户默认邮件客户端找不到或无法启动
SecurityException
-如果存在一个安全管理和否认
AWTPermission("showWindowWithoutWarningBanner")
许可,或调用线程不允许创建子进程
URI
,
AWTPermission
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.