public class DataFlavor extends Object implements Externalizable, 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 Tutorial」の「How to Use Drag and Drop and Data Transfer」セクションを参照してください。
修飾子と型 | フィールドと説明 |
---|---|
static DataFlavor |
imageFlavor
Java Image クラスを表す
DataFlavor 。ここでは、次のようになります。 |
static DataFlavor |
javaFileListFlavor
Java (および基本となるプラットフォーム) との間でファイルのリストを転送するには、このタイプ/サブタイプの
DataFlavor と、java.util.List の表現クラスが使用されます。 |
static String |
javaJVMLocalObjectMimeType
MIME コンテンツタイプが関連付けられていない任意の Java オブジェクト参照への参照を同じ JVM 内の
Transferable インタフェース経由で転送するには、このタイプ/サブタイプの DataFlavor が、Transferable 経由で渡されるクラス/インタフェースのタイプに等しい representationClass とともに使用されます。 |
static String |
javaRemoteObjectMimeType
有効なリンクをドラッグ&ドロップ
ACTION_LINK 操作によってリモートオブジェクトに渡すには、application/x-java-remote-object の MIME コンテンツタイプを使用するようにしてください。ここで、DataFlavor の表現クラスは、転送される Remote インタフェースのタイプを表します。 |
static String |
javaSerializedObjectMimeType
application/x-java-serialized-object という MIME タイプは、永続化された Java オブジェクト (複数可) のグラフを表します。
|
static DataFlavor |
plainTextFlavor
非推奨。
1.3 以降。
Transferable.getTransferData(DataFlavor.plainTextFlavor) の代わりに DataFlavor.getReaderForText(Transferable) を使用します。 |
static DataFlavor |
stringFlavor
Java Unicode String クラスを表す
DataFlavor 。ここでは、次のようになります。 |
コンストラクタと説明 |
---|
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 を構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
Object |
clone()
この
DataFlavor の複製を返します。 |
boolean |
equals(DataFlavor that)
このメソッドの動作は、
equals(Object) と同じです。 |
boolean |
equals(Object o)
このオブジェクトと他のオブジェクトが等しいかどうかを示します。
|
boolean |
equals(String s)
非推奨。
hashCode() 規約と矛盾するので、代わりに isMimeTypeEqual(String) を使用してください。 |
Class<?> |
getDefaultRepresentationClass() |
String |
getDefaultRepresentationClassAsString() |
String |
getHumanPresentableName()
この
DataFlavor が表すデータ形式の判読できる名前を返します。 |
String |
getMimeType()
この
DataFlavor の MIME タイプの文字列を返します。 |
String |
getParameter(String paramName)
paramName が「humanPresentableName」に等しい場合は、この DataFlavor の判読できる名前を返します。 |
String |
getPrimaryType()
この
DataFlavor のプライマリ MIME タイプを返します。 |
Reader |
getReaderForText(Transferable transferable)
必要に応じて、予想される文字セット (エンコード) をデコードしたテキストフレーバの Reader を取得します。
|
Class<?> |
getRepresentationClass()
この
DataFlavor が要求されたときに、この DataFlavor をサポートしているオブジェクトが返す Class を返します。 |
String |
getSubType()
この
DataFlavor のサブ MIME タイプを返します。 |
static DataFlavor |
getTextPlainUnicodeFlavor()
Unicode エンコーディングでプレーンテキストを表す
DataFlavor を返します。ここでは、次のようになります。 |
int |
hashCode()
この
DataFlavor のハッシュコードを返します。 |
boolean |
isFlavorJavaFileListType()
指定された
DataFlavor がファイルオブジェクトのリストを表す場合は true を返します。 |
boolean |
isFlavorRemoteObjectType()
指定された
DataFlavor がリモートオブジェクトを表す場合は true を返します。 |
boolean |
isFlavorSerializedObjectType()
指定された
DataFlavor が直列化オブジェクトを表す場合は true を返します。 |
boolean |
isFlavorTextType()
この
DataFlavor が Java プラットフォームのこの実装のための有効なテキストフレーバであるかどうかを返します。 |
boolean |
isMimeTypeEqual(DataFlavor dataFlavor)
2 つの
DataFlavor オブジェクトの mimeType を比較します。 |
boolean |
isMimeTypeEqual(String mimeType)
渡された MIME タイプの文字列表現がこの
DataFlavor の MIME タイプと同等であるかどうかを返します。 |
boolean |
isMimeTypeSerializedObject()
DataFlavor が直列化オブジェクトを表すかどうか。 |
boolean |
isRepresentationClassByteBuffer()
この
DataFlavor の表現クラスが java.nio.ByteBuffer か、またはそのサブクラスのどちらであるかを返します。 |
boolean |
isRepresentationClassCharBuffer()
この
DataFlavor の表現クラスが java.nio.CharBuffer か、またはそのサブクラスのどちらであるかを返します。 |
boolean |
isRepresentationClassInputStream()
DataFlavor が java.io.InputStream を表すかどうか。 |
boolean |
isRepresentationClassReader()
この
DataFlavor の表現クラスが java.io.Reader か、またはそのサブクラスのどちらであるかを返します。 |
boolean |
isRepresentationClassRemote()
表現クラスが
Remote である場合は true を返します。 |
boolean |
isRepresentationClassSerializable()
表現クラスを直列化できる場合は true を返します。
|
boolean |
match(DataFlavor that)
equals(DataFlavor) と同じ。 |
protected String |
normalizeMimeType(String mimeType)
非推奨。
|
protected String |
normalizeMimeTypeParameter(String parameterName, String parameterValue)
非推奨。
|
void |
readExternal(ObjectInput is)
この
DataFlavor を直列化された状態から復元します。 |
static DataFlavor |
selectBestTextFlavor(DataFlavor[] availableFlavors)
DataFlavor の配列から最適なテキスト DataFlavor を選択します。 |
void |
setHumanPresentableName(String humanPresentableName)
この
DataFlavor が表すデータ形式の判読できる名前を設定します。 |
String |
toString()
この
DataFlavor とそのパラメータの文字列表現。 |
protected static Class<?> |
tryToLoadClass(String className, ClassLoader fallback)
ブートストラップローダー、システムローダー、コンテキストローダー (存在する場合)、指定されたローダーの順番でクラスのロードを試みます。
|
void |
writeExternal(ObjectOutput os)
この
DataFlavor を直列化します。 |
public static final DataFlavor stringFlavor
DataFlavor
。ここでは、次のようになります。
representationClass = java.lang.String mimeType = "application/x-java-serialized-object"
public static final DataFlavor imageFlavor
DataFlavor
。ここでは、次のようになります。
representationClass = java.awt.Image mimeType = "image/x-java-image"
@Deprecated public static final DataFlavor plainTextFlavor
Transferable.getTransferData(DataFlavor.plainTextFlavor)
の代わりに DataFlavor.getReaderForText(Transferable)
を使用します。DataFlavor
。
representationClass = InputStream mimeType = "text/plain; charset=unicode"この
DataFlavor
は、次の理由により非推奨になりました。(1) その表現が InputStream、8 ビット形式であるのに対し、Unicode は 16 ビット文字セットである。(2) charset「unicode」は明確になっていない。 「unicode」は共通プラットフォームの実装ではなく Unicode の特定のプラットフォームの実装を意味している。public static final String javaSerializedObjectMimeType
DataFlavor
に関連付けられた表現クラスによって、java.awt.datatransfer.getTransferData
の呼び出しからの参照として返されたオブジェクトの Java 型が識別されます。public static final DataFlavor javaFileListFlavor
DataFlavor
と、java.util.List
の表現クラスが使用されます。リストの各要素は java.io.File
型であることが要求されるか、または保証されます。public static final String javaJVMLocalObjectMimeType
Transferable
インタフェース経由で転送するには、このタイプ/サブタイプの DataFlavor
が、Transferable
経由で渡されるクラス/インタフェースのタイプに等しい representationClass
とともに使用されます。
この MIME コンテンツタイプの DataFlavor
に対して Transferable.getTransferData
から返されたオブジェクト参照は、DataFlavor
の表現クラスのインスタンスである必要があります。
public DataFlavor()
DataFlavor
を構築します。このコンストラクタは、Externalizable
インタフェースをサポートする目的のためにのみ提供されます。public (クライアント) 使用を目的とはしていません。public DataFlavor(Class<?> representationClass, String humanPresentableName)
DataFlavor
を構築します。
返された DataFlavor
には次の特性があります。
representationClass = representationClass mimeType = application/x-java-serialized-object
representationClass
- このフレーバでデータを転送するために使用されるクラスhumanPresentableName
- このフレーバを識別するために使用される、人間が読める形式の文字列。このパラメータが null
である場合は、MIME コンテンツタイプの値が使用されます。NullPointerException
- representationClass
が null の場合public DataFlavor(String mimeType, String humanPresentableName)
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 の場合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 の場合public DataFlavor(String mimeType) throws ClassNotFoundException
mimeType
文字列から DataFlavor
を構築します。文字列は「class=DataFlavor
を作成できます。この文字列に「class=」パラメータが含まれていない場合は、java.io.InputStream
がデフォルトとして使用されます。mimeType
- このフレーバの MIME タイプを識別するために使用される文字列。「class=」パラメータで指定されたクラスが正常にロードされない場合は、ClassNotFoundException
がスローされるClassNotFoundException
- クラスがロードされていない場合IllegalArgumentException
- mimeType
が無効である場合NullPointerException
- mimeType
が null の場合protected static final Class<?> tryToLoadClass(String className, ClassLoader fallback) throws ClassNotFoundException
className
- ロードされるクラスの名前fallback
- 代替用ローダーClassNotFoundException
- クラスが見つからない場合public String toString()
DataFlavor
とそのパラメータの文字列表現。結果として得られる String
には、DataFlavor
クラスの名前、このフレーバの MIME タイプ、およびその表現クラスが含まれます。このフレーバに「テキスト」のプライマリ MIME タイプがあり、文字セットパラメータをサポートしていて、符号化された表現がある場合には、フレーバの文字セットも含まれます。文字セットパラメータをサポートするテキストフレーバのリストについては、selectBestTextFlavor
を参照してください。toString
、クラス: Object
DataFlavor
の文字列表現selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public static final DataFlavor getTextPlainUnicodeFlavor()
DataFlavor
を返します。ここでは、次のようになります。
representationClass = java.io.InputStream mimeType = "text/plain; charset=<platform default Unicode encoding>"Microsoft Windows 向けの Sun の実装では、
utf-16le
エンコーディングを使用します。Solaris および Linux 向けの Sun の実装では、iso-10646-ucs-2
エンコーディングを使用します。DataFlavor
public static final DataFlavor selectBestTextFlavor(DataFlavor[] availableFlavors)
DataFlavor
の配列から最適なテキスト DataFlavor
を選択します。選択肢として見なされるのは、DataFlavor.stringFlavor
、同等のフレーバ、および「text」のプライマリ MIME タイプを持つフレーバだけです。
最初に、フレーバは MIME タイプで次の順にソートされます。
たとえば、「text/sgml」は「text/html」より先に選択され、DataFlavor.stringFlavor
は DataFlavor.plainTextFlavor
より先に選択されます。
配列で 2 つ以上のフレーバが最適な MIME タイプを共有している場合は、その MIME タイプが文字セットパラメータをサポートしているかどうか確認されます。
文字セットパラメータをサポートしている、またはサポートしているかのように扱われる MIME タイプは次のとおりです。
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 などの Unicord 文字セットとそのエイリアスが最適であるとみなされます。その後、プラットフォームのデフォルト文字セットとそのエイリアスが選択されます。US-ASCII とそのエイリアスはもっとも不適です。その他の文字セットはアルファベット順に選択されます。ただし、Java プラットフォームの実装でサポートされている文字セットに限られます。
2 つ以上のフレーバが最適な文字セットを共有している場合、フレーバは再度、その表現クラスによって java.io.InputStream
、java.nio.ByteBuffer
、[B
、<残りすべて> の順にソートされます。
2 つ以上のフレーバで最適な表現クラスを共有している場合、または指定された 3 つの表現のいずれかを持つフレーバがない場合は、それらのフレーバのいずれか 1 つが無作為に選択されます。
availableFlavors
- 使用可能な DataFlavor
の配列availableFlavors
が null
か、長さがゼロか、またはテキストフレーバを含まない場合は null
public Reader getReaderForText(Transferable transferable) throws UnsupportedFlavorException, IOException
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
- 入出力エラーのためにデータを読み込めない場合selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public String getMimeType()
DataFlavor
の MIME タイプの文字列を返します。public Class<?> getRepresentationClass()
DataFlavor
が要求されたときに、この DataFlavor
をサポートしているオブジェクトが返す Class
を返します。DataFlavor
が要求されたときに、この DataFlavor
をサポートしているオブジェクトが返す Class
public String getHumanPresentableName()
DataFlavor
が表すデータ形式の判読できる名前を返します。この名前は、それぞれの国に対応した名前になります。DataFlavor
が表すデータ形式の判読できる名前public String getPrimaryType()
DataFlavor
のプライマリ MIME タイプを返します。DataFlavor
のプライマリ MIME タイプpublic String getSubType()
DataFlavor
のサブ MIME タイプを返します。DataFlavor
のサブ MIME タイプpublic String getParameter(String paramName)
paramName
が「humanPresentableName」に等しい場合は、この DataFlavor
の判読できる名前を返します。そうでない場合は、paramName
に関連付けられた MIME タイプの値を返します。paramName
- 要求されたパラメータ名null
public void setHumanPresentableName(String humanPresentableName)
DataFlavor
が表すデータ形式の判読できる名前を設定します。この名前は、それぞれの国に対応した名前になります。humanPresentableName
- 新しい判読できる名前public boolean equals(Object o)
equals
メソッドは、null 以外のオブジェクト参照での同値関係を実装します。
x
について、x.equals(x)
は true
を返します。
x
および y
について、y.equals(x)
が true
を返す場合に限り、x.equals(y)
は true
を返します。
x
、y
、および z
について、x.equals(y)
が true
を返し、y.equals(z)
が true
を返す場合、x.equals(z)
は true
を返します。
x
および y
について、x.equals(y)
の複数の呼び出しは、このオブジェクトに対する equals
による比較で使われた情報が変更されていなければ、一貫して true
を返すか、一貫して false
を返します。
x
について、x.equals(null)
は false
を返します。
Object
クラスの equals
メソッドは、もっとも比較しやすいオブジェクトの同値関係を実装します。つまり、null 以外の参照値 x
と y
について、このメソッドは x
と y
が同じオブジェクトを参照する (x == y
が true
) 場合にだけ true
を返します。
通常、このメソッドをオーバーライドする場合は、hashCode
メソッドを常にオーバーライドして、「等価なオブジェクトは等価なハッシュコードを保持する必要がある」という hashCode
メソッドの汎用規約に従う必要があることに留意してください。
DataFlavor
クラスが等しいかどうかの比較は、次のように実行されます。2 つの DataFlavor
は、それらの MIME プライマリタイプ、サブタイプ、および表現クラスが等しい場合にのみ等しいと見なされます。さらに、プライマリタイプが「text」であり、サブタイプが文字セットパラメータをサポートするテキストフレーバを示し、さらに表現クラスが java.io.Reader
、java.lang.String
、java.nio.CharBuffer
、[C
のいずれでもない場合は、charset
パラメータも等しいと見なされます。DataFlavor
のどちらかまたは両方で文字セットが明示的に指定されていない場合は、プラットフォームのデフォルトエンコーディングが使用されます。文字セットパラメータをサポートするテキストフレーバのリストについては、selectBestTextFlavor
を参照してください。
equals
、クラス: Object
o
- this
と比較する Object
that
がこの DataFlavor
と同等である場合は true
、そうでない場合は false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public boolean equals(DataFlavor that)
equals(Object)
と同じです。異なる点は、パラメータとして DataFlavor
インスタンスを取ることだけです。that
- this
と比較する DataFlavor
that
がこの DataFlavor
と同等である場合は true
、そうでない場合は false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
@Deprecated public boolean equals(String s)
hashCode()
規約と矛盾するので、代わりに isMimeTypeEqual(String)
を使用してください。mimeType
を、渡された String
とのみ比較します。この比較で representationClass
は考慮されません。
representationClass
を比較する必要がある場合は、equals(new DataFlavor(s))
を使用できます。s
- 比較する mimeType
。s
が null
の場合は falsepublic int hashCode()
DataFlavor
のハッシュコードを返します。2 つの DataFlavor
が等しい場合は、ハッシュコードも等しくなります。DataFlavor.equals(String)
に一致する String
の場合は、DataFlavor
のハッシュコードが String
のハッシュコードに等しいことは保証されません。hashCode
、クラス: Object
DataFlavor
のハッシュコードObject.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean match(DataFlavor that)
equals(DataFlavor)
と同じ。that
- this
と比較する DataFlavor
that
がこの DataFlavor
と同等である場合は true
、そうでない場合は false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public boolean isMimeTypeEqual(String mimeType)
DataFlavor
の MIME タイプと同等であるかどうかを返します。パラメータは比較の対象ではありません。mimeType
- MIME タイプの文字列表現DataFlavor
の MIME タイプと同等である場合は true。そうでない場合は falseNullPointerException
- mimeType が null
の場合public final boolean isMimeTypeEqual(DataFlavor dataFlavor)
DataFlavor
オブジェクトの mimeType
を比較します。パラメータは比較の対象ではありません。dataFlavor
- 比較対象の DataFlavor
MimeType
が等しい場合は true。そうでない場合は falsepublic boolean isMimeTypeSerializedObject()
DataFlavor
が直列化オブジェクトを表すかどうか。public final Class<?> getDefaultRepresentationClass()
public final String getDefaultRepresentationClassAsString()
public boolean isRepresentationClassInputStream()
DataFlavor
が java.io.InputStream
を表すかどうか。public boolean isRepresentationClassReader()
DataFlavor
の表現クラスが java.io.Reader
か、またはそのサブクラスのどちらであるかを返します。public boolean isRepresentationClassCharBuffer()
DataFlavor
の表現クラスが java.nio.CharBuffer
か、またはそのサブクラスのどちらであるかを返します。public boolean isRepresentationClassByteBuffer()
DataFlavor
の表現クラスが java.nio.ByteBuffer
か、またはそのサブクラスのどちらであるかを返します。public boolean isRepresentationClassSerializable()
public boolean isRepresentationClassRemote()
Remote
である場合は true を返します。Remote
である場合は truepublic boolean isFlavorSerializedObjectType()
DataFlavor
が直列化オブジェクトを表す場合は true を返します。DataFlavor
が直列化オブジェクトを表す場合は truepublic boolean isFlavorRemoteObjectType()
DataFlavor
がリモートオブジェクトを表す場合は true を返します。DataFlavor
がリモートオブジェクトを表す場合は truepublic boolean isFlavorJavaFileListType()
DataFlavor
がファイルオブジェクトのリストを表す場合は true を返します。DataFlavor
がファイルオブジェクトのリストを表す場合は truepublic 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
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public void writeExternal(ObjectOutput os) throws IOException
DataFlavor
を直列化します。writeExternal
、インタフェース: Externalizable
os
- オブジェクトを書き込むストリームIOException
- 発生する可能性のあるすべての入出力例外を含むpublic void readExternal(ObjectInput is) throws IOException, ClassNotFoundException
DataFlavor
を直列化された状態から復元します。readExternal
、インタフェース: Externalizable
is
- オブジェクトを復元するためのデータ読み込み元のストリームIOException
- 入出力エラーが発生した場合ClassNotFoundException
- 復元されているオブジェクトのクラスが見つからない場合。public Object clone() throws CloneNotSupportedException
DataFlavor
の複製を返します。clone
、クラス: Object
DataFlavor
の複製CloneNotSupportedException
- オブジェクトのクラスが Cloneable
インタフェースをサポートしていない場合。clone
メソッドをオーバーライドしたサブクラスも、インスタンスを複製できないことを示すためにこの例外をスローすることがあるCloneable
@Deprecated protected String normalizeMimeTypeParameter(String parameterName, String parameterValue)
DataFlavor
サブクラスが、値の大文字と小文字を区別しない text/plain の charset
パラメータなどの特殊なパラメータを取り扱えるようにするために、各 MIME タイプパラメータの DataFlavor
に対して呼び出されます (MIME タイプのパラメータ値は大文字と小文字を区別することになっている)。
このメソッドはパラメータ名とパラメータ値のペアごとに呼び出され、parameterValue
の正規化された表現を返さなければいけません。
1.1 以降では、このメソッドがこの実装によって呼び出されることはありません。
@Deprecated protected String normalizeMimeType(String mimeType)
DataFlavor
サブタイプに MIME タイプの正規化の実現方法を変更する機会を与えるために、MIME タイプ文字列ごとに呼び出されます。MIME タイプの文字列を渡すものがない場合に、デフォルトのパラメータ/値のペアを追加するために使用することもあります。
1.1 以降では、このメソッドがこの実装によって呼び出されることはありません。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.