public class Desktop extends Object
Desktopクラスは、JavaアプリケーションがURIまたはファイルを処理するために、ネイティブ・デスクトップ上に登録された関連付けられたアプリケーションを起動できるようにします。
 サポートされる操作には次のものがあります。
mailto URIを指定して、ユーザー・デフォルトのメール・クライアントを起動する。このクラスには、これらの操作に対応するメソッドが用意されています。 メソッドは、URIやファイルを処理するために、現在のプラットフォームで登録済みの関連付けられたアプリケーションを検索して起動します。 関連付けられたアプリケーションがない場合や、関連付けられたアプリケーションを起動できない場合は、例外がスローされます。
 アプリケーションはURIまたはファイルの種類に対して登録されます。たとえば、"sxi"ファイル拡張子は、通常StarOfficeに登録されます。 関連付けられたアプリケーションの登録、アクセス、および起動のメカニズムは、プラットフォームに応じて異なります。 
 
 各操作は、Desktop.Actionクラスで表されるアクション・タイプです。
 
ノート: アクションが呼び出されて関連付けられたアプリケーションが実行される場合、そのアプリケーションは、Javaアプリケーションが起動されたシステムと同じシステムで実行されます。
| 修飾子と型 | クラス | 説明 | 
|---|---|---|
static class  | 
Desktop.Action | 
 アクションの種類を表します。 
 | 
| 修飾子と型 | メソッド | 説明 | 
|---|---|---|
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インスタンスを返します。 一部のプラットフォームでは、Desktop APIがサポートされていない場合があります。現在のデスクトップがサポートされているかどうかを調べるには、isDesktopSupported()メソッドを使用してください。 HeadlessException - GraphicsEnvironment.isHeadless()がtrueを返す場合UnsupportedOperationException - このクラスが現在のプラットフォームでサポートされていない場合isDesktopSupported(), GraphicsEnvironment.isHeadless()public static boolean isDesktopSupported()
getDesktop()を使用してください。 true、そうでない場合はfalsegetDesktop()public boolean isSupported(Desktop.Action action)
アクションがプラットフォームでサポートされている場合でも、そのアクションに対応するアプリケーションがファイルやURIに登録されていないことがあります。 たとえば、Desktop.Action.OPENアクションはほとんどのプラットフォームでサポートされています。 ただし、特定のファイルに対して、それを開くためのアプリケーションが登録されていない場合があります。 この場合、isSupported(java.awt.Desktop.Action)はtrueを返しますが、対応するアクション・メソッドはIOExceptionをスローします。 
action - 指定されたDesktop.Actiontrue、そうでない場合はfalseDesktop.Actionpublic void open(File file) throws IOException
指定されたファイルがディレクトリの場合は、それを開くために現在のプラットフォームのファイル・マネージャが起動されます。
file - 関連付けられたアプリケーションで開くファイルNullPointerException - fileがnullの場合IllegalArgumentException - 指定されたファイルが存在しない場合UnsupportedOperationException - 現在のプラットフォームがDesktop.Action.OPENアクションをサポートしていない場合IOException - 指定されたファイルにアプリケーションが関連付けられていないか、関連付けられたアプリケーションを起動できない場合SecurityException - セキュリティ・マネージャが存在する場合に、セキュリティ・マネージャのSecurityManager.checkRead(java.lang.String)メソッドがファイルへの読取りアクセスを許可しない場合、またはAWTPermission("showWindowWithoutWarningBanner")アクセス権を許可しない場合、または呼出し側スレッドがサブプロセスの作成を許可されていない場合AWTPermissionpublic 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")アクセス権を許可しない場合、または呼出し側スレッドがサブプロセスの作成を許可されていない場合AWTPermissionpublic 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 Startedアプリケーション内から呼び出された場合は、BasicService.showDocument()が使用されます。 
uri - ユーザー・デフォルトのブラウザで表示するURINullPointerException - uriがnullの場合UnsupportedOperationException - 現在のプラットフォームがDesktop.Action.BROWSEアクションをサポートしていない場合IOException - ユーザー・デフォルトのブラウザが見つからないか起動できない場合、またはデフォルトのハンドラ・アプリケーションを起動できない場合SecurityException - セキュリティ・マネージャが存在し、AWTPermission("showWindowWithoutWarningBanner")アクセス権を拒否する場合。または呼出し元スレッドがサブプロセスの作成を許可されず、アプレットまたはJava Web Startedアプリケーション内から呼び出されない場合IllegalArgumentException - 必要なアクセス権を利用できず、URIをURLに変換できない場合URI, AWTPermission, AppletContextpublic void mail()
          throws IOException
UnsupportedOperationException - 現在のプラットフォームがDesktop.Action.MAILアクションをサポートしていない場合IOException - ユーザー・デフォルトのメール・クライアントが見つからないか、起動できない場合SecurityException - セキュリティ・マネージャが存在し、AWTPermission("showWindowWithoutWarningBanner")アクセス権を拒否する場合、または呼出し元スレッドがサブプロセスの作成を許可されていない場合AWTPermissionpublic void mail(URI mailtoURI) throws IOException
mailto: URIによって指定されたメッセージ・フィールドにデータを設定します。
  mailto: URIでは、「to」、「cc」、「subject」、「body」などのメッセージ・フィールドを指定できます。mailto: URIの仕様の詳細は、「The mailto URL scheme (RFC 2368)」を参照してください。
mailtoURI - 指定されたmailto: URINullPointerException - 指定されたURIがnullである場合IllegalArgumentException - URIスキームが"mailto"でない場合UnsupportedOperationException - 現在のプラットフォームがDesktop.Action.MAILアクションをサポートしていない場合IOException - ユーザー・デフォルトのメール・クライアントが見つからないか、起動できない場合SecurityException - セキュリティ・マネージャが存在し、AWTPermission("showWindowWithoutWarningBanner")アクセス権を拒否する場合、または呼出し元スレッドがサブプロセスの作成を許可されていない場合URI, AWTPermission バグまたは機能を送信 
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。 
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved.  Use is subject to license terms.  Documentation Redistribution Policyも参照してください。