|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.datatransfer.DataFlavor
public class DataFlavor
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
のコンストラクタについては、該当するドキュメントを参照してください。
また、プライマリ MIME タイプが "text" である DataFlavor
インスタンスは、"charset" パラメータを持つこともできます。"text" MIME タイプと "charset" パラメータの詳細は、RFC 2046 と selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
を参照してください。
DataFlavor
どうしが等しいかどうかは、プライマリタイプ、サブタイプ、および表現クラスによって決まります。詳細は、equals(DataFlavor)
を参照してください。等しいかどうかを決定するときは、省略可能なすべてのパラメータが無視されます。たとえば、次の 2 つの文では、同一であるとみなされる 2 つの DataFlavor
が生成されます。
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
同一の JVM の内部で Transferable インタフェースを介して、MIME タイプが関連していない任意の Java オブジェクト参照の参照を転送するには、この型 (またはサブタイプ) の DataFlavor と Transferble を介して渡されたクラス (またはインタフェース) の型と同じ representationClass が使用されます。 |
static String |
javaRemoteObjectMimeType
リモートオブジェクトに、ドラッグ&ドロップによる ACTION_LINK オペレーションを介して有効なリンクを渡すには、MIME タイプに application/x-java-remote-object を使うようにしてください。 |
static String |
javaSerializedObjectMimeType
application/x-java-serialized-object という MIME タイプは、永続化された Java オブジェクト (複数可) のグラフを表します。 |
static DataFlavor |
plainTextFlavor
推奨されていません。 Version 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)
ある DataFlavor とこの DataFlavor が等しいかどうかを判定します。 |
boolean |
equals(Object o)
任意の Object とこの DataFlavor が等しいかどうかを判定します。 |
boolean |
equals(String s)
推奨されていません。 hashCode() 規約と一貫性がないため、代わりに isMimeTypeEqual(String) を使用してください。 |
Class<?> |
getDefaultRepresentationClass()
|
String |
getDefaultRepresentationClassAsString()
|
String |
getHumanPresentableName()
この DataFlavor が表すデータ形式に対する、判読できる名前を返します。 |
String |
getMimeType()
この DataFlavor の MIME タイプの文字列を返します。 |
String |
getParameter(String paramName)
paramName が判読できる名前である場合は、この 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)
ある DataFlavor とこの 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 を直列化します。 |
クラス java.lang.Object から継承されたメソッド |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
フィールドの詳細 |
---|
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
型であることが要求 (Java への転送の場合) または保証 (Java からの転送の場合) されます。
public static final String javaJVMLocalObjectMimeType
Transferable
インタフェースを介して、MIME タイプが関連していない任意の Java オブジェクト参照の参照を転送するには、この型 (またはサブタイプ) の DataFlavor
と Transferble
を介して渡されたクラス (またはインタフェース) の型と同じ representationClass
が使用されます。
この MIME タイプの DataFlavor
に対して Transferable.getTransferData
から返されたオブジェクト参照は、DataFlavor
の表現クラスのインスタンスである必要があります。
public static final String javaRemoteObjectMimeType
ACTION_LINK
オペレーションを介して有効なリンクを渡すには、MIME タイプに application/x-java-remote-object を使うようにしてください。このとき、DataFlavor
の表現クラスは、転送される Remote
インタフェースの型を表します。
コンストラクタの詳細 |
---|
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=<表現クラス> の場合、次の呼び出しと同じ結果になります。new DataFlavor(Class:forName(<表現クラス>)
そうでない場合は、次のようになります。
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=<表現クラス> の場合、次の呼び出しと同じ結果になります。new DataFlavor(Class:forName(<表現クラス>)
そうでない場合は、次のようになります。
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
を参照してください。
Object
内の toString
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
および同等のフレーバ、そしてプライマリ MIME タイプが「テキスト」であるフレーバだけが選択肢とみなされます。
最初に、フレーバは MIME タイプで次の順にソートされます。
たとえば、text/sgml は text/html よりも先に選択され、DataFlavor.stringFlavor
は DataFlavor.plainTextFlavor
よりも先に選択されます。
配列で 2 つ以上のフレーバが最適な MIME タイプを共有している場合は、その MIME タイプが文字セットパラメータをサポートしているかどうか確認されます。
文字セットパラメータをサポートしている、またはサポートしているかのように扱われる MIME タイプは次のとおりです。
DataFlavor
でパラメータが明示的にリストされているかどうかを確認します。その場合、JRE はその時点から、MIME タイプが文字セットパラメータをサポートしていると仮定し、再度確認することはありません。パラメータが明示的にリストされていない場合、JRE はその時点から、MIME タイプが文字セットパラメータをサポートしていないと仮定し、再度確認することはありません。この確認は任意に選択された DataFlavor
で実行されるため、開発者は、文字セットパラメータが MIME タイプ text/<その他> でサポートされている場合、その MIME タイプを持つすべての DataFlavor
で文字セットパラメータを指定しなければいけません。開発者は、JRE に頼って、プラットフォームのデフォルト文字セットを text/<その他> の DataFlavor の代用として使うべきではありません。この制限に従わない場合、定義されていない動作が発生します。
配列内で最適な 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
が判読できる名前である場合は、この DataFlavor
の判読できる名前を返します。そうでない場合は、paramName
に関連付けられた MIME タイプの値を返します。
paramName
- 要求されたパラメータ名
null
public void setHumanPresentableName(String humanPresentableName)
DataFlavor
が表すデータ形式に対する、判読できる名前を設定します。この名前は、それぞれの国に対応した名前になります。
humanPresentableName
- 新しい判読できる名前public boolean equals(Object o)
Object
とこの DataFlavor
が等しいかどうかを判定します。2 つの DataFlavor
の MIME プライマリタイプとサブタイプと表現クラスが同じ場合は、その DataFlavor
は等しいとみなされます。さらに、プライマリタイプが「テキスト」で、サブタイプが文字セットパラメータをサポートするテキストフレーバを表し、表現クラスが java.io.Reader
、java.lang.String
、java.nio.CharBuffer
、[C
のいずれでもない場合は、charset
パラメータも等しいことになります。どちらか一方、または両方の DataFlavor
で文字セットが明示的に指定されていない場合は、プラットフォームのデフォルトエンコーディングが仮定されます。文字セットパラメータをサポートするテキストフレーバのリストについては、selectBestTextFlavor
を参照してください。
Object
内の equals
o
- this
と比較する Object
that
がこの DataFlavor
と等しい場合は true
、そうでない場合は false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public boolean equals(DataFlavor that)
DataFlavor
とこの DataFlavor
が等しいかどうかを判定します。2 つの DataFlavor
の MIME プライマリタイプとサブタイプと表現クラスが同じ場合は、その DataFlavor
は等しいとみなされます。さらに、プライマリタイプが「テキスト」で、サブタイプが文字セットパラメータをサポートするテキストフレーバを表し、表現クラスが java.io.Reader
、java.lang.String
、java.nio.CharBuffer
、[C
のいずれでもない場合は、charset
パラメータも等しいことになります。どちらか一方、または両方の DataFlavor
で文字セットが明示的に指定されていない場合は、プラットフォームのデフォルトエンコーディングが仮定されます。文字セットパラメータをサポートするテキストフレーバのリストについては、selectBestTextFlavor
を参照してください。
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))
を使用できます。
public int hashCode()
DataFlavor
に使うハッシュコードを返します。2 つの DataFlavor
が等しいときは、ハッシュコードも等しくなります。DataFlavor.equals(String)
と一致する String
の場合は、DataFlavor
のハッシュコードが String
のハッシュコードと同じかどうかは保証できません。
Object
内の hashCode
DataFlavor
のハッシュコードObject.equals(java.lang.Object)
,
Hashtable
public boolean match(DataFlavor that)
DataFlavor
とこの DataFlavor
が等しいかどうかを判定します。2 つの DataFlavor
の MIME プライマリタイプとサブタイプと表現クラスが同じ場合は、その DataFlavor
は等しいとみなされます。さらに、プライマリタイプが「テキスト」で、サブタイプが文字セットパラメータをサポートするテキストフレーバを表し、表現クラスが java.io.Reader
、java.lang.String
、java.nio.CharBuffer
、[C
のいずれでもない場合は、charset
パラメータも等しいことになります。どちらか一方、または両方の DataFlavor
で文字セットが明示的に指定されていない場合は、プラットフォームのデフォルトエンコーディングが仮定されます。文字セットパラメータをサポートするテキストフレーバのリストについては、selectBestTextFlavor
を参照してください。
that
- this
と比較する DataFlavor
that
がこの DataFlavor
と等しい場合は true
、そうでない場合は false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public boolean isMimeTypeEqual(String mimeType)
DataFlavor
の MIME タイプと同じかどうかを返します。パラメータは比較の対象ではありません。
mimeType
- MIME タイプの文字列表現
DataFlavor
の MIME タイプと同じ場合は true、そうでない場合は false
NullPointerException
- 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
と同等のフレーバと、プライマリ 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
を直列化します。
Externalizable
内の writeExternal
os
- オブジェクトを書き込むストリーム
IOException
- 発生する可能性があるすべての入出力例外public void readExternal(ObjectInput is) throws IOException, ClassNotFoundException
DataFlavor
を復元します。
Externalizable
内の readExternal
is
- オブジェクトを復元するためのデータ読み込み元のストリーム
IOException
- 入出力エラーが発生した場合
ClassNotFoundException
- 復元されているオブジェクトのクラスが見つからなかった場合public Object clone() throws CloneNotSupportedException
DataFlavor
の複製を返します。
Object
内の clone
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 以降では、このメソッドがこの実装によって呼び出されることはありません。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。