- すべての実装されたインタフェース:
Externalizable,Serializable,Cloneable
DataFlavorは、データに関するメタ情報を提供します。 DataFlavorは通常、クリップボード上のデータにアクセスしたり、ドラッグ&ドロップ操作中にデータにアクセスしたりするために使用されます。
DataFlavorのインスタンスは、RFC 2045およびRFC 2046の定義に従ってコンテンツ・タイプをカプセル化します。 通常、コンテンツ・タイプはMIMEタイプと呼ばれます。
コンテンツ・タイプは、メディア・タイプ(プライマリ・タイプと呼ばれる)、サブタイプ、およびオプションのパラメータで構成されます。 MIMEタイプの構文の詳細は、RFC 2045を参照してください。
JREデータ転送の実装は、MIMEタイプのパラメータ「class」を表現クラスとして解釈します。 表現クラスは、転送されるオブジェクトのクラスを反映します。 つまり、表現クラスは、Transferable.getTransferData(java.awt.datatransfer.DataFlavor)によって返されるオブジェクトのタイプです。 たとえば、imageFlavorのMIMEタイプが"image/x-java-image;class=java.awt.Image"である場合、プライマリ・タイプはimage、サブタイプはx-java-image、表現クラスはjava.awt.Imageです。 getTransferDataがimageFlavorのDataFlavorで呼び出されると、java.awt.Imageのインスタンスが返されます。 DataFlavorが表現クラスに対してエラー・チェックを行わないことに注意する必要があります。 表現クラスが有効かどうかは、DataFlavorのコンシューマ(Transferableなど)で判定します。
DataFlavorの作成時に表現クラスを指定しない場合は、デフォルトの表現クラスが使用されます。 DataFlavorのコンストラクタについては、該当するドキュメントを参照してください。
また、「text」のプライマリMIMEタイプを持つDataFlavorインスタンスは、「charset」パラメータを取ることもできます。 「text」のMIMEタイプと「charset」パラメータの詳細は、RFC 2046およびselectBestTextFlavor(java.awt.datatransfer.DataFlavor[])を参照してください。
DataFlavorsが等しいかどうかは、プライマリ・タイプ、サブタイプ、および表現クラスによって判定されます。 詳細は、equals(DataFlavor)を参照してください。 等しいかどうかを決定するときは、オプションのすべてのパラメータが無視されます。 たとえば、次の文では、同一であると見なされる2つのDataFlavorsが生成されます。
DataFlavor flavor1 = new DataFlavor(Object.class, "X-test/test; class=<java.lang.Object>; foo=bar"); DataFlavor flavor2 = new DataFlavor(Object.class, "X-test/test; class=<java.lang.Object>; x=y"); // The following returns true. flavor1.equals(flavor2);前に説明したように、
flavor1とflavor2は同一であると見なされます。 したがって、どちらのDataFlavorでTransferableを要求しても、同じ結果が返されます。
Swingでのデータ転送の使用の詳細については、「Javaチュートリアル」の「ドラッグ・アンド・ドロップとデータ転送の使い方」セクションを参照してください。
- 導入されたバージョン:
- 1.1
- 関連項目:
-
フィールドのサマリー
フィールド修飾子と型フィールド説明static final DataFlavor1つのHTMLマークアップを表します。static final DataFlavor1つのHTMLマークアップを表します。static final DataFlavorJava Imageクラスを表すDataFlavor。ここでは、次のようになります。static final DataFlavorJava (および基本となるプラットフォーム)との間でファイルのリストを転送するには、このタイプ/サブタイプのDataFlavorと、java.util.Listの表現クラスが使用されます。static final StringMIMEコンテンツ・タイプが関連付けられていない任意のJavaオブジェクト参照への参照を同じJVM内のTransferableインタフェース経由で転送するには、このタイプ/サブタイプのDataFlavorが、Transferable経由で渡されるクラス/インタフェースのタイプに等しいrepresentationClassとともに使用されます。static final String有効なリンクをドラッグ&ドロップACTION_LINK操作によってリモート・オブジェクトに渡すには、application/x-java-remote-objectのMIMEコンテンツ・タイプを使用するようにしてください。ここで、DataFlavorの表現クラスは、転送されるRemoteインタフェースのタイプを表します。static final Stringapplication/x-java-serialized-objectというMIMEタイプは、永続化されたJavaオブジェクト(複数可)のグラフを表します。static final DataFlavor非推奨。: 1.3static final DataFlavor1つのHTMLマークアップを表します。static final DataFlavorJava Unicode Stringクラスを表すDataFlavor。ここでは、次のようになります。 -
コンストラクタのサマリー
コンストラクタコンストラクタ説明新しいDataFlavorを構築します。DataFlavor(Class<?> representationClass, String humanPresentableName) Javaクラスを表すDataFlavorを構築します。DataFlavor(String mimeType) mimeType文字列からDataFlavorを構築します。DataFlavor(String mimeType, String humanPresentableName) MimeTypeを表すDataFlavorを構築します。DataFlavor(String mimeType, String humanPresentableName, ClassLoader classLoader) MimeTypeを表すDataFlavorを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明clone()このDataFlavorの複製を返します。booleanequals(DataFlavor that) このメソッドの動作は、equals(Object)と同じです。booleanこのオブジェクトと他のオブジェクトが等しいかどうかを示します。boolean非推奨。hashCode()契約と矛盾するので、代わりにisMimeTypeEqual(String)を使用してください。final Class<?> デフォルトの表現クラスを返します。final Stringデフォルト表現クラスの名前を返します。このDataFlavorが表すデータ形式の判読できる名前を返します。このDataFlavorのMIMEタイプの文字列を返します。getParameter(String paramName) paramNameが「humanPresentableName」に等しい場合は、このDataFlavorの判読できる名前を返します。このDataFlavorのプライマリMIMEタイプを返します。getReaderForText(Transferable transferable) 必要に応じて、予想される文字セット(エンコード)をデコードしたテキスト・フレーバのReaderを取得します。Class<?> このDataFlavorが要求されたときに、このDataFlavorをサポートしているオブジェクトが返すClassを返します。このDataFlavorのサブMIMEタイプを返します。static final DataFlavorUnicodeエンコーディングでプレーン・テキストを表すDataFlavorを返します。ここでは、次のようになります。inthashCode()このDataFlavorのハッシュ・コードを返します。boolean指定されたDataFlavorがファイル・オブジェクトのリストを表す場合、trueを返します。boolean指定されたDataFlavorがリモート・オブジェクトを表す場合は、trueを返します。boolean指定されたDataFlavorが直列化されたオブジェクトを表す場合、trueを返します。booleanこのDataFlavorがJavaプラットフォームのこの実装のための有効なテキスト・フレーバであるかどうかを返します。final booleanisMimeTypeEqual(DataFlavor dataFlavor) 2つのDataFlavorオブジェクトのmimeTypeを比較します。booleanisMimeTypeEqual(String mimeType) 渡されたMIMEタイプの文字列表現がこのDataFlavorのMIMEタイプと同等であるかどうかを返します。booleanDataFlavorが直列化オブジェクトを表すかどうか。booleanこのDataFlavorの表現クラスがjava.nio.ByteBufferか、またはそのサブクラスのどちらであるかを返します。booleanこのDataFlavorの表現クラスがjava.nio.CharBufferか、またはそのサブクラスのどちらであるかを返します。booleanDataFlavorがjava.io.InputStreamを表すかどうか。booleanこのDataFlavorの表現クラスがjava.io.Readerか、またはそのサブクラスのどちらであるかを返します。boolean表現クラスがRemoteの場合、trueを返します。boolean表現クラスを直列化できる場合はtrueを返します。booleanmatch(DataFlavor that) protected StringnormalizeMimeType(String mimeType) 非推奨。1.1以降では、このメソッドがこの実装によって呼び出されることはありませんprotected StringnormalizeMimeTypeParameter(String parameterName, String parameterValue) 非推奨。1.1以降では、このメソッドがこの実装によって呼び出されることはありませんvoidこのDataFlavorを直列化された状態から復元します。static final DataFlavorselectBestTextFlavor(DataFlavor[] availableFlavors) DataFlavorの配列から最適なテキストDataFlavorを選択します。voidsetHumanPresentableName(String humanPresentableName) このDataFlavorが表すデータ形式の判読できる名前を設定します。toString()このDataFlavorとそのパラメータの文字列表現。protected static final Class<?> tryToLoadClass(String className, ClassLoader fallback) ブートストラップ・ローダー、システム・ローダー、コンテキスト・ローダー(存在する場合)、指定されたローダーの順番でクラスのロードを試みます。voidこのDataFlavorを直列化します。
-
フィールド詳細
-
stringFlavor
public static final DataFlavor stringFlavorJava Unicode Stringクラスを表すDataFlavor。ここでは、次のようになります。representationClass = java.lang.String mimeType = "application/x-java-serialized-object" -
imageFlavor
public static final DataFlavor imageFlavorJava Imageクラスを表すDataFlavor。ここでは、次のようになります。representationClass = java.awt.Image mimeType = "image/x-java-image"java.awt.Imageが表示されない場合、java.desktopモジュールがロードされない場合、またはjava.desktopモジュールがランタイム・イメージにない場合、nullになります。 -
plainTextFlavor
@Deprecated public static final DataFlavor plainTextFlavor非推奨。: 1.3Transferable.getTransferData(DataFlavor.plainTextFlavor)の代わりにgetReaderForText(java.awt.datatransfer.Transferable)を使用してください。Unicodeエンコーディングでプレーン・テキストを表すDataFlavor。representationClass = InputStream mimeType = "text/plain; charset=unicode"このDataFlavorはdeprecatedされています:- その表現は、8ビット・ベースの表現であるInputStreamであり、Unicodeは16ビットの文字セットです
- 文字セット"unicode"は明確に定義されていません。"unicode"は、クロス・プラットフォーム実装ではなく、特定のプラットフォームのUnicodeの実装を意味
-
javaSerializedObjectMimeType
public static final String javaSerializedObjectMimeTypeapplication/x-java-serialized-objectというMIMEタイプは、永続化されたJavaオブジェクト(複数可)のグラフを表します。この
DataFlavorに関連付けられた表現クラスによって、java.awt.datatransfer.getTransferDataの呼び出しからの参照として返されたオブジェクトのJava型が識別されます。- 関連項目:
-
javaFileListFlavor
public static final DataFlavor javaFileListFlavorJava (および基本となるプラットフォーム)との間でファイルのリストを転送するには、このタイプ/サブタイプのDataFlavorと、java.util.Listの表現クラスが使用されます。 リストの各要素はjava.io.File型であることが要求されるか、または保証されます。 -
javaJVMLocalObjectMimeType
public static final String javaJVMLocalObjectMimeTypeMIMEコンテンツ・タイプが関連付けられていない任意のJavaオブジェクト参照への参照を同じJVM内のTransferableインタフェース経由で転送するには、このタイプ/サブタイプのDataFlavorが、Transferable経由で渡されるクラス/インタフェースのタイプに等しいrepresentationClassとともに使用されます。このMIMEコンテンツ・タイプの
DataFlavorに対してTransferable.getTransferDataから返されたオブジェクト参照は、DataFlavorの表現クラスのインスタンスである必要があります。- 関連項目:
-
javaRemoteObjectMimeType
public static final String javaRemoteObjectMimeType有効なリンクをドラッグ&ドロップACTION_LINK操作によってリモート・オブジェクトに渡すには、application/x-java-remote-objectのMIMEコンテンツ・タイプを使用するようにしてください。ここで、DataFlavorの表現クラスは、転送されるRemoteインタフェースのタイプを表します。- 関連項目:
-
selectionHtmlFlavor
public static final DataFlavor selectionHtmlFlavor1つのHTMLマークアップを表します。 このマークアップは、ソース側で選択された部分で構成されます。 したがって、マークアップの一部のタグには、対応するタグがない場合があります。 フレーバを使用してTransferableインスタンス内のデータが表されている場合、追加の変更は行われません。 このDataFlavorインスタンスは、コンテンツのMIMEタイプにドキュメント・パラメータが含まれておらず、表現クラスがStringクラスであるDataFlavorインスタンスと同じHTMLマークアップを表しています。representationClass = String mimeType = "text/html"- 導入されたバージョン:
- 1.8
-
fragmentHtmlFlavor
public static final DataFlavor fragmentHtmlFlavor1つのHTMLマークアップを表します。 可能な場合は、ネイティブ・システムから受け取ったマークアップが補足され、ペア・タグが整形式のHTMLマークアップになります。 フレーバを使用してTransferableインスタンス内のデータが表されている場合、追加の変更は行われません。representationClass = String mimeType = "text/html"- 導入されたバージョン:
- 1.8
-
allHtmlFlavor
public static final DataFlavor allHtmlFlavor1つのHTMLマークアップを表します。 可能な場合は、ネイティブ・システムから受け取ったマークアップが補足され、追加のタグによって整形式のHTMLドキュメントが作成されます。 フレーバを使用してTransferableインスタンス内のデータが表されている場合、追加の変更は行われません。representationClass = String mimeType = "text/html"- 導入されたバージョン:
- 1.8
-
-
コンストラクタの詳細
-
DataFlavor
public DataFlavor()新しいDataFlavorを構築します。 このコンストラクタは、Externalizableインタフェースをサポートする目的のためにのみ提供されます。 public (クライアント)使用を目的とはしていません。- 導入されたバージョン:
- 1.2
-
DataFlavor
Javaクラスを表すDataFlavorを構築します。返された
DataFlavorには次の特性があります。representationClass = representationClass mimeType = application/x-java-serialized-object- パラメータ:
representationClass- このフレーバでデータを転送するために使用されるクラスhumanPresentableName- この風味を識別するために人間が読める文字列。このパラメータがnullの場合は、MIMEコンテンツ型の値が使用されます- スロー:
NullPointerException-representationClassがnullの場合
-
DataFlavor
MimeTypeを表すDataFlavorを構築します。返された
DataFlavorには次の特性があります。mimeTypeが"application/x-java-serialized-object; class=<representation class>"の場合、結果はnew DataFlavor(Class.forName(<representation class>)を呼び出すのと同じ結果になります。そうでない場合は、次のようになります。
representationClass = InputStream mimeType = mimeType- パラメータ:
mimeType- このフレーバのMIMEタイプを識別するために使用される文字列。mimeTypeで"class="パラメータが指定されていない場合、またはクラスが正常にロードされない場合は、IllegalArgumentExceptionがスローされますhumanPresentableName- この風味を識別するために人間が読める文字列。このパラメータがnullの場合は、MIMEコンテンツ型の値が使用されます- スロー:
IllegalArgumentException-mimeTypeが無効な場合、またはクラスが正常にロードされない場合NullPointerException-mimeTypeがnullの場合
-
DataFlavor
public DataFlavor(String mimeType, String humanPresentableName, ClassLoader classLoader) throws ClassNotFoundException MimeTypeを表すDataFlavorを構築します。返された
DataFlavorには次の特性があります。mimeTypeが"application/x-java-serialized-object; class=<representation class>"の場合、結果は
new DataFlavor(Class.forName(<representation class>)を呼び出すと同じ結果になります。そうでない場合は、次のようになります。
representationClass = InputStream mimeType = mimeType- パラメータ:
mimeType- このフレーバのMIMEタイプを識別するために使用される文字列humanPresentableName- このフレーバを識別するために使用される人間が読める形式の文字列classLoader- 使用するクラス・ローダー- スロー:
ClassNotFoundException- クラスがロードされていない場合IllegalArgumentException-mimeTypeが無効である場合NullPointerException-mimeTypeがnullの場合
-
DataFlavor
public DataFlavor(String mimeType) throws ClassNotFoundException mimeType文字列からDataFlavorを構築します。 文字列は、「class=<fully specified Java class name>」パラメータを指定し、指定した表現クラスでDataFlavorを作成できます。 この文字列に「class=」パラメータが含まれていない場合は、java.io.InputStreamがデフォルトとして使用されます。- パラメータ:
mimeType- このフレーバのMIMEタイプを識別するために使用される文字列。"class="パラメータで指定されたクラスが正常にロードされなかった場合は、ClassNotFoundExceptionがスローされます。- スロー:
ClassNotFoundException- クラスがロードされていない場合IllegalArgumentException-mimeTypeが無効である場合NullPointerException-mimeTypeがnullの場合
-
-
メソッドの詳細
-
tryToLoadClass
protected static final Class<?> tryToLoadClass(String className, ClassLoader fallback) throws ClassNotFoundException ブートストラップ・ローダー、システム・ローダー、コンテキスト・ローダー(存在する場合)、指定されたローダーの順番でクラスのロードを試みます。- パラメータ:
className- ロードされるクラスの名前fallback- 代替用ローダー- 戻り値:
- ロードされたクラス
- スロー:
ClassNotFoundException- クラスが見つからない場合
-
toString
public String toString()このDataFlavorとそのパラメータの文字列表現。 結果として得られるStringには、DataFlavorクラスの名前、このフレーバのMIMEタイプ、およびその表現クラスが含まれます。 このフレーバに「テキスト」のプライマリMIMEタイプがあり、文字セット・パラメータをサポートしていて、符号化された表現がある場合には、フレーバの文字セットも含まれます。 文字セット・パラメータをサポートするテキスト・フレーバのリストについては、selectBestTextFlavorを参照してください。 -
getTextPlainUnicodeFlavor
public static final DataFlavor getTextPlainUnicodeFlavor()Unicodeエンコーディングでプレーン・テキストを表すDataFlavorを返します。ここでは、次のようになります。representationClass = java.io.InputStream mimeType = "text/plain; charset=<platform default Unicode encoding>"- 実装上のノート:
- Microsoft WindowsおよびmacOSに対するOracleの実装では、エンコーディング
utf-16leが使用されます。 SolarisおよびLinux用のOracleの実装では、エンコーディングiso-10646-ucs-2が使用されます。 - 戻り値:
- Unicodeエンコーディングでプレーン・テキストを表す
DataFlavor - 導入されたバージョン:
- 1.3
-
selectBestTextFlavor
public static final DataFlavor selectBestTextFlavor(DataFlavor[] availableFlavors) DataFlavorの配列から最適なテキストDataFlavorを選択します。 選択肢として見なされるのは、DataFlavor.stringFlavor、同等のフレーバ、および「text」のプライマリMIMEタイプを持つフレーバだけです。最初に、フレーバはMIMEタイプで次の順にソートされます。
- "text/sgml"
- "text/xml"
- "text/html"
- "text/rtf"
- "text/enriched"
- "text/richtext"
- "text/uri-list"
- "text/tab-separated-values"
- "text/t140"
- "text/rfc822-headers"
- "text/parityfec"
- "text/directory"
- "text/css"
- "text/calendar"
- "application/x-java-serialized-object"
- "text/plain"
- "text/<その他>"
たとえば、「text/sgml」は「text/html」より先に選択され、
DataFlavor.stringFlavorはDataFlavor.plainTextFlavorより先に選択されます。配列で2つ以上のフレーバが最適なMIMEタイプを共有している場合は、そのMIMEタイプが文字セット・パラメータをサポートしているかどうか確認されます。
文字セット・パラメータをサポートしている、またはサポートしているかのように扱われるMIMEタイプは次のとおりです。
- "text/sgml"
- "text/xml"
- "text/html"
- "text/enriched"
- "text/richtext"
- "text/uri-list"
- "text/directory"
- "text/css"
- "text/calendar"
- "application/x-java-serialized-object"
- "text/plain"
- "text/rtf"
- "text/tab-separated-values"
- "text/t140"
- "text/rfc822-headers"
- "text/parityfec"
DataFlavorにそのパラメータが明示的にリストされているかどうかをチェックします。 その場合、JREはその時点から、MIMEタイプが文字セット・パラメータをサポートしていると仮定し、再度確認することはありません。 パラメータが明示的にリストされていない場合、JREはその時点から、MIMEタイプが文字セット・パラメータをサポートしていないと仮定し、再度確認することはありません。 このチェックは任意に選択されたDataFlavorに対して実行されるため、そのMIMEタイプで文字セット・パラメータがサポートされている場合、開発者は「text/<その他>」のMIMEタイプを持つすべてのDataFlavorで文字セット・パラメータが確実に指定されているようにする必要があります。 開発者は、「text/<その他>」のDataFlavorがJREによってプラットフォームのデフォルトの文字セットに置き換えられることに依存してはいけません。 この制限に従わない場合、定義されていない動作が発生します。配列内の最適なMIMEタイプで文字セット・パラメータがサポートされていない場合、そのMIMEタイプを共有するフレーバは、その表現クラスによって
java.io.InputStream、java.nio.ByteBuffer、[B、<残りすべて>の順にソートされます。2つ以上のフレーバで最適な表現クラスを共有している場合、または指定された3つの表現のいずれかを持つフレーバがない場合は、それらのフレーバのいずれか1つが無作為に選択されます。
配列内の最適なMIMEタイプで文字セット・パラメータがサポートされている場合、そのMIMEタイプを共有するフレーバは、その表現クラスによって
java.io.Reader、java.lang.String、java.nio.CharBuffer、[C、<残りすべて>の順にソートされます。2つ以上のフレーバで最適な表現クラスを共有しており、その表現が明示的にリストした4つのいずれかである場合、それらのフレーバのいずれか1つが無作為に選択されます。 ただし、指定された4つの表現のいずれかを持つフレーバがない場合、フレーバはその文字セットでソートされます。 UTF-16、UTF-8、UTF-16BE、UTF-16LEなどのUnicode文字セットとそのエイリアスが最適であるとみなされます。 その後、プラットフォームのデフォルト文字セットとそのエイリアスが選択されます。 US-ASCIIとそのエイリアスはもっとも不適です。 その他の文字セットはアルファベット順に選択されます。ただし、Javaプラットフォームの実装でサポートされている文字セットに限られます。
2つ以上のフレーバが最適な文字セットを共有している場合、フレーバは再度、その表現クラスによって
java.io.InputStream、java.nio.ByteBuffer、[B、<残りすべて>の順にソートされます。2つ以上のフレーバで最適な表現クラスを共有している場合、または指定された3つの表現のいずれかを持つフレーバがない場合は、それらのフレーバのいずれか1つが無作為に選択されます。
- パラメータ:
availableFlavors- 使用可能なDataFlavorの配列- 戻り値:
- 上で指定されたルールに関して最適な(最適合)フレーバ。
availableFlavorsがnullか、長さがゼロか、またはテキスト・フレーバを含まない場合はnull - 導入されたバージョン:
- 1.3
-
getReaderForText
public Reader getReaderForText(Transferable transferable) throws UnsupportedFlavorException, IOException 必要に応じて、予想される文字セット(エンコード)をデコードしたテキスト・フレーバのReaderを取得します。 サポートされる表現クラスは、java.io.Reader、java.lang.String、java.nio.CharBuffer、[C、java.io.InputStream、java.nio.ByteBuffer、および[Bです。文字セット・パラメータをサポートしていないテキスト・フレーバは標準以外のフォーマットで符号化されるため、そのようなフレーバに対してこのメソッドを呼び出すべきではありません。 ただし、下位互換性を維持するために、そのようなフレーバでこのメソッドが呼び出された場合は、文字セット・パラメータをサポートしているかのようにフレーバを扱い、それに従ってデコードしようとします。 文字セット・パラメータをサポートしていないテキスト・フレーバのリストについては、
selectBestTextFlavorを参照してください。- パラメータ:
transferable- このフレーバでデータが要求されるTransferable- 戻り値:
Transferableのデータを読み込むためのReader- スロー:
IllegalArgumentException- 表現クラスが上記の7つのリストにない場合IllegalArgumentException-Transferableにnullデータが含まれている場合NullPointerException-Transferableがnullである場合UnsupportedEncodingException- このフレーバの表現がjava.io.InputStream、java.nio.ByteBuffer、または[Bであり、かつこのフレーバのエンコーディングがこのJavaプラットフォームの実装でサポートされていない場合UnsupportedFlavorException-Transferableがこのフレーバをサポートしていない場合IOException- 入出力エラーのためにデータを読み込めない場合- 導入されたバージョン:
- 1.3
- 関連項目:
-
getMimeType
public String getMimeType()このDataFlavorのMIMEタイプの文字列を返します。- 戻り値:
- このフレーバのMIMEタイプの文字列
-
getRepresentationClass
public Class<?> getRepresentationClass()このDataFlavorが要求されたときに、このDataFlavorをサポートしているオブジェクトが返すClassを返します。- 戻り値:
- この
DataFlavorが要求されたときに、このDataFlavorをサポートしているオブジェクトが返すClass
-
getHumanPresentableName
public String getHumanPresentableName()このDataFlavorが表すデータ形式の判読できる名前を返します。 この名前は、それぞれの国に対応した名前になります。- 戻り値:
- この
DataFlavorが表すデータ形式の判読できる名前
-
getPrimaryType
public String getPrimaryType()このDataFlavorのプライマリMIMEタイプを返します。- 戻り値:
- この
DataFlavorのプライマリMIMEタイプ
-
getSubType
public String getSubType()このDataFlavorのサブMIMEタイプを返します。- 戻り値:
- この
DataFlavorのサブMIMEタイプ
-
getParameter
paramNameが「humanPresentableName」に等しい場合は、このDataFlavorの判読できる名前を返します。 そうでない場合は、paramNameに関連付けられたMIMEタイプの値を返します。- パラメータ:
paramName- 要求されたパラメータ名- 戻り値:
- 名前パラメータの値。関連付けられた値がない場合は
null
-
setHumanPresentableName
public void setHumanPresentableName(String humanPresentableName) このDataFlavorが表すデータ形式の判読できる名前を設定します。 この名前は、それぞれの国に対応した名前になります。- パラメータ:
humanPresentableName- 新しい判読できる名前
-
equals
public boolean equals(Object o) このオブジェクトと他のオブジェクトが等しいかどうかを示します。equalsメソッドは、null以外のオブジェクト参照での同値関係を実装します。- 反射性(reflexive): null以外の参照値
xについて、x.equals(x)はtrueを返します。 - 対称性(symmetric): null以外の参照値
xおよびyについて、y.equals(x)がtrueを返す場合に限り、x.equals(y)はtrueを返します。 - 推移性(transitive): null以外の参照値
x、y、およびzについて、x.equals(y)がtrueを返し、y.equals(z)がtrueを返す場合、x.equals(z)はtrueを返します。 - 一貫性(consistent): null以外の参照値
xおよびyについて、x.equals(y)の複数の呼出しは、このオブジェクトに対するequalsによる比較で使われた情報が変更されていなければ、一貫してtrueを返すか、一貫してfalseを返します。 - null以外の参照値
xについて、x.equals(null)はfalseを返します。
等価関係は、操作対象の要素を「同等クラス」にパーティション化し、等価クラスのすべてのメンバーは互いに等しくなります。 等価クラスのメンバーは、少なくともなんらかの目的で互いに置換可能です。
DataFlavorクラスが等しいかどうかの比較は、次のように実行されます。2つのDataFlavorは、それらのMIMEプライマリ・タイプ、サブタイプ、および表現クラスが等しい場合にのみ等しいと見なされます。 さらに、プライマリ・タイプが「text」であり、サブタイプが文字セット・パラメータをサポートするテキスト・フレーバを示し、さらに表現クラスがjava.io.Reader、java.lang.String、java.nio.CharBuffer、[Cのいずれでもない場合は、charsetパラメータも等しいと見なされます。DataFlavorのどちらかまたは両方で文字セットが明示的に指定されていない場合は、プラットフォームのデフォルト・エンコーディングが使用されます。 文字セット・パラメータをサポートするテキスト・フレーバのリストについては、selectBestTextFlavorを参照してください。 - 反射性(reflexive): null以外の参照値
-
equals
public boolean equals(DataFlavor that) このメソッドの動作は、equals(Object)と同じです。 異なる点は、パラメータとしてDataFlavorインスタンスを取ることだけです。- パラメータ:
that-thisと比較するDataFlavor- 戻り値:
thatがこのDataFlavorと同等である場合はtrue、そうでない場合はfalse- 関連項目:
-
equals
@Deprecated public boolean equals(String s) 非推奨。hashCode()契約と矛盾するので、代わりにisMimeTypeEqual(String)を使用してください。mimeTypeのみを渡されたStringと比較します。representationClassは比較で考慮されません。representationClassを比較する必要がある場合は、equals(new DataFlavor(s))を使用できます。- パラメータ:
s- 比較するmimeType- 戻り値:
- String (MimeType)が等しい場合は
true、それ以外の場合、またはsがnullの場合
-
hashCode
public int hashCode()このDataFlavorのハッシュ・コードを返します。 2つのDataFlavorが等しい場合は、ハッシュ・コードも等しくなります。DataFlavor.equals(String)に一致するStringの場合は、DataFlavorのハッシュ・コードがStringのハッシュ・コードに等しいことは保証されません。 -
match
public boolean match(DataFlavor that) - パラメータ:
that-thisと比較するDataFlavor- 戻り値:
thatがこのDataFlavorと同等である場合はtrue、そうでない場合はfalse- 導入されたバージョン:
- 1.3
- 関連項目:
-
isMimeTypeEqual
public boolean isMimeTypeEqual(String mimeType) 渡されたMIMEタイプの文字列表現がこのDataFlavorのMIMEタイプと同等であるかどうかを返します。 パラメータは比較の対象ではありません。- パラメータ:
mimeType- MIMEタイプの文字列表現- 戻り値:
true渡されたMIMEタイプの文字列表現がこのDataFlavorのMIMEタイプと等しい場合。falseそうでなければ- スロー:
NullPointerException- mimeTypeがnullの場合
-
isMimeTypeEqual
public final boolean isMimeTypeEqual(DataFlavor dataFlavor) 2つのDataFlavorオブジェクトのmimeTypeを比較します。 パラメータは比較の対象ではありません。- パラメータ:
dataFlavor- 比較対象のDataFlavor- 戻り値:
MimeTypeが等しい場合はtrue、そうでない場合はfalse
-
isMimeTypeSerializedObject
public boolean isMimeTypeSerializedObject()DataFlavorが直列化オブジェクトを表すかどうか。- 戻り値:
- 直列化されたオブジェクトが表現されているかどうか
-
getDefaultRepresentationClass
public final Class<?> getDefaultRepresentationClass()デフォルトの表現クラスを返します。- 戻り値:
- デフォルト表現クラス
-
getDefaultRepresentationClassAsString
public final String getDefaultRepresentationClassAsString()デフォルト表現クラスの名前を返します。- 戻り値:
- デフォルト表現クラスの名前
-
isRepresentationClassInputStream
public boolean isRepresentationClassInputStream()DataFlavorがjava.io.InputStreamを表すかどうか。- 戻り値:
- この
DataFlavorがjava.io.InputStreamを表すかどうか
-
isRepresentationClassReader
public boolean isRepresentationClassReader()このDataFlavorの表現クラスがjava.io.Readerか、またはそのサブクラスのどちらであるかを返します。- 戻り値:
- この
DataFlavorの表現クラスがjava.io.Readerかそのサブクラスかどうか - 導入されたバージョン:
- 1.4
-
isRepresentationClassCharBuffer
public boolean isRepresentationClassCharBuffer()このDataFlavorの表現クラスがjava.nio.CharBufferか、またはそのサブクラスのどちらであるかを返します。- 戻り値:
- この
DataFlavorの表現クラスがjava.nio.CharBufferかそのサブクラスかどうか - 導入されたバージョン:
- 1.4
-
isRepresentationClassByteBuffer
public boolean isRepresentationClassByteBuffer()このDataFlavorの表現クラスがjava.nio.ByteBufferか、またはそのサブクラスのどちらであるかを返します。- 戻り値:
- この
DataFlavorの表現クラスがjava.nio.ByteBufferかそのサブクラスかどうか - 導入されたバージョン:
- 1.4
-
isRepresentationClassSerializable
public boolean isRepresentationClassSerializable()表現クラスを直列化できる場合はtrueを返します。- 戻り値:
- 表現クラスを直列化できる場合は
true
-
isRepresentationClassRemote
public boolean isRepresentationClassRemote()表現クラスがRemoteの場合、trueを返します。- 戻り値:
true表現クラスがRemoteの場合
-
isFlavorSerializedObjectType
public boolean isFlavorSerializedObjectType()指定されたDataFlavorが直列化されたオブジェクトを表す場合、trueを返します。- 戻り値:
- 指定された
DataFlavorが直列化オブジェクトを表す場合はtrue
-
isFlavorRemoteObjectType
public boolean isFlavorRemoteObjectType()指定されたDataFlavorがリモート・オブジェクトを表す場合は、trueを返します。- 戻り値:
- 指定された
DataFlavorがリモート・オブジェクトを表す場合はtrue
-
isFlavorJavaFileListType
public boolean isFlavorJavaFileListType()指定されたDataFlavorがファイル・オブジェクトのリストを表す場合、trueを返します。- 戻り値:
- 指定された
DataFlavorがjava.io.Fileオブジェクトのjava.util.Listを表す場合、true
-
isFlavorTextType
public boolean isFlavorTextType()このDataFlavorがJavaプラットフォームのこの実装のための有効なテキスト・フレーバであるかどうかを返します。 有効なテキスト・フレーバとして指定できるのは、DataFlavor.stringFlavorと同等のフレーバと、「text」のプライマリMIMEタイプを持つDataFlavorだけです。このフレーバが文字セット・パラメータをサポートしている場合は、そのフレーバが
DataFlavor.stringFlavorと同等である必要がある必要があります。または、その表現がjava.io.Reader、java.lang.String、java.nio.CharBuffer、[C、java.io.InputStream、java.nio.ByteBuffer、[Bのいずれかである必要があります。 その表現がjava.io.InputStream、java.nio.ByteBuffer、または[Bである場合は、このフレーバのcharsetパラメータがこのJavaプラットフォームの実装でサポートされている必要があります。 文字セットが指定されていない場合は、常にサポートされているプラットフォームのデフォルト文字セットが仮定されます。このフレーバが文字セット・パラメータをサポートしていない場合、その表現は
java.io.InputStream、java.nio.ByteBuffer、または[Bである必要があります。文字セット・パラメータをサポートするテキスト・フレーバのリストについては、
selectBestTextFlavorを参照してください。- 戻り値:
- この
DataFlavorが上で説明されている有効なテキスト・フレーバである場合はtrue。そうでない場合はfalse - 導入されたバージョン:
- 1.4
- 関連項目:
-
writeExternal
public void writeExternal(ObjectOutput os) throws IOException このDataFlavorを直列化します。- 定義:
writeExternal、インタフェースExternalizable- パラメータ:
os- オブジェクトを書き込むストリーム- スロー:
IOException- 発生する可能性のあるすべての入出力例外を含む
-
readExternal
public void readExternal(ObjectInput is) throws IOException, ClassNotFoundException このDataFlavorを直列化された状態から復元します。- 定義:
readExternal、インタフェースExternalizable- パラメータ:
is- オブジェクトを復元するためのデータ読込み元のストリーム- スロー:
IOException- 入出力エラーが発生した場合ClassNotFoundException- 復元されているオブジェクトのクラスが見つからない場合。
-
clone
public Object clone() throws CloneNotSupportedExceptionこのDataFlavorの複製を返します。- オーバーライド:
clone、クラスObject- 戻り値:
- この
DataFlavorの複製 - スロー:
CloneNotSupportedException- オブジェクトのクラスがCloneableインタフェースをサポートしていない場合。cloneメソッドをオーバーライドしたサブクラスも、インスタンスを複製できないことを示すためにこの例外をスローすることがある。- 関連項目:
-
normalizeMimeTypeParameter
@Deprecated protected String normalizeMimeTypeParameter(String parameterName, String parameterValue) 非推奨。1.1以降では、このメソッドがこの実装によって呼び出されることはありませんDataFlavorサブクラスが、値の大文字と小文字を区別しないtext/plainのcharsetパラメータなどの特殊なパラメータを取り扱えるようにするために、各MIMEタイプ・パラメータのDataFlavorに対して呼び出されます。 (MIMEタイプのパラメータ値は大文字と小文字を区別することになっています。)このメソッドはパラメータ名とパラメータ値のペアごとに呼び出され、
parameterValueの正規化された表現を返さなければいけません。- パラメータ:
parameterName- パラメータ名parameterValue- パラメータ値- 戻り値:
- パラメータ値
-
normalizeMimeType
@Deprecated protected String normalizeMimeType(String mimeType) 非推奨。1.1以降では、このメソッドがこの実装によって呼び出されることはありませんDataFlavorサブタイプにMIMEタイプの正規化の実現方法を変更する機会を与えるために、MIMEタイプ文字列ごとに呼び出されます。 渡されたMIMEタイプの文字列にパラメータ/値のペアが存在しない場合のために、デフォルトのパラメータ/値のペアを追加するために使用することもできます。- パラメータ:
mimeType- MIME型- 戻り値:
- MIMEタイプ
-