©
本文档使用 PHP中文网手册 发布
|
JavaTM 2 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
,且 DataFlavor
为 imageFlavor
时,返回 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)
。在确定相等性时,所有可选参数都被忽略。例如,以下代码产生的两个 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
被认为是相等的。同样地,请求 Transferable
或 DataFlavor
将返回相同的结果。
有关在 Swing 中使用数据传输的更多信息,请参阅 Java Tutorial 中的 How to Use Drag and Drop and Data Transfer 一节。
字段摘要 | |
---|---|
static DataFlavor |
imageFlavor
DataFlavor 表示 Java Image 类,其中: |
static DataFlavor |
javaFileListFlavor
要将文件列表传入 Java(及底层平台)或从中传出,需要使用此类型/子类型的 DataFlavor 和 java.util.List 的表示形式类。 |
static String |
javaJVMLocalObjectMimeType
要将一个引用传输到不具有关联 MIME Content 类型的任意 Java 对象引用(跨越同一 JVM 中的 Transferable 接口),需要使用具有此类型/子类型的 DataFlavor ,其中 representationClass 等于跨越 Transferable 传递的类/接口的类型。 |
static String |
javaRemoteObjectMimeType
为了通过拖放 ACTION_LINK 操作将活动链接传递到 Remote 对象,应该使用 Mime Content 类型的 application/x-java-remote-object,其中 DataFlavor 的表示形式类表示要传输的 Remote 接口的类型。 |
static String |
javaSerializedObjectMimeType
MIME Content 类型的 application/x-java-serialized-object 表示已变得持久的 Java 对象的图形。 |
static DataFlavor |
plainTextFlavor
已过时。 从 1.3 开始。使用 DataFlavor.getReaderForText(Transferable) 代替 Transferable.getTransferData(DataFlavor.plainTextFlavor) 。
|
static DataFlavor |
stringFlavor
DataFlavor 表示 Java 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 。 |
方法摘要 | |
---|---|
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 等于 "humanPresentableName",则返回此 DataFlavor 的得体的名称。 |
String |
getPrimaryType()
返回此 DataFlavor 的基本 MIME 类型。 |
Reader |
getReaderForText(Transferable transferable)
获取文本 flavor 的 Reader,如果需要,则为期望的 charset(编码的)解码。 |
Class<?> |
getRepresentationClass()
返回请求此 DataFlavor 时,支持此 DataFlavor 的对象将返回的 Class 。 |
String |
getSubType()
返回此 DataFlavor 的子 MIME 类型。 |
static DataFlavor |
getTextPlainUnicodeFlavor()
返回表示具有 Unicode 编码的纯文本的 DataFlavor ,其中:
representationClass = java.io.InputStream
mimeType = "text/plain;
charset=<platform default Unicode encoding>"
Sun 的 Microsoft Windows 实现使用编码 utf-16le 。 |
int |
hashCode()
返回此 DataFlavor 的哈希码。 |
boolean |
isFlavorJavaFileListType()
如果指定的 DataFlavor 表示 File 对象列表,则返回 true。 |
boolean |
isFlavorRemoteObjectType()
如果指定的 DataFlavor 表示远程对象,则返回 true。 |
boolean |
isFlavorSerializedObjectType()
如果指定的 DataFlavor 表示序列化对象,则返回 true。 |
boolean |
isFlavorTextType()
返回此 DataFlavor 是否是 Java 平台此实现的有效文本 flavor。 |
boolean |
isMimeTypeEqual(DataFlavor dataFlavor)
比较两个 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)
根据 Serialized 状态还原此 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
表示 Java Unicode String 类,其中:
representationClass = java.lang.String mimeType = "application/x-java-serialized-object"
public static final DataFlavor imageFlavor
DataFlavor
表示 Java Image 类,其中:
representationClass = java.awt.Image mimeType = "image/x-java-image"
@Deprecated public static final DataFlavor plainTextFlavor
DataFlavor.getReaderForText(Transferable)
代替 Transferable.getTransferData(DataFlavor.plainTextFlavor)
。DataFlavor
表示使用 Unicode 编码的纯文本,其中:
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 类型,这里的对象指调用 java.awt.datatransfer.getTransferData
时作为引用返回的对象。
public static final DataFlavor javaFileListFlavor
DataFlavor
和 java.util.List
的表示形式类。要求/保证列表的每个元素都是 java.io.File
类型。
public static final String javaJVMLocalObjectMimeType
Transferable
接口),需要使用具有此类型/子类型的 DataFlavor
,其中 representationClass
等于跨越 Transferable
传递的类/接口的类型。
对于具有此 MIME Content 类型的 DataFlavor
,从 Transferable.getTransferData
返回的对象引用必须是 DataFlavor
的表示形式类的实例。
public static final String javaRemoteObjectMimeType
ACTION_LINK
操作将活动链接传递到 Remote 对象,应该使用 Mime Content 类型的 application/x-java-remote-object,其中 DataFlavor
的表示形式类表示要传输的 Remote
接口的类型。
构造方法详细信息 |
---|
public DataFlavor()
DataFlavor
。提供此构造方法的目的只是为了支持 Externalizable
接口。它不用于公共(客户端)用途。
public DataFlavor(Class<?> representationClass, String humanPresentableName)
DataFlavor
。
返回的 DataFlavor
将具有以下特征:
representationClass = representationClass mimeType = application/x-java-serialized-object
representationClass
- 用于在此 flavor 中传输数据的类humanPresentableName
- 用于标识此 flavor 的可读字符串;如果此参数为 null
,则使用 MIME Content 类型的值
NullPointerException
- 如果 representationClass
为 nullpublic 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
- 用于标识此 flavor 的 MIME 类型的字符串;如果 mimeType
没有指定 "class=" 参数,或者没有成功地加载类,则抛出 IllegalArgumentException
humanPresentableName
- 用于标识此 flavor 的可读字符串;如果此参数为 null
,则使用 MIME Content 类型的值
IllegalArgumentException
- 如果 mimeType
无效或者没有成功加载类
NullPointerException
- 如果 mimeType
为 nullpublic 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
- 用于标识此 flavor 的 MIME 类型的字符串humanPresentableName
- 用于标识此 flavor 的可读字符串classLoader
- 要使用的类加载器
ClassNotFoundException
- 如果没有加载类
IllegalArgumentException
- 如果 mimeType
无效
NullPointerException
- 如果 mimeType
为 nullpublic DataFlavor(String mimeType) throws ClassNotFoundException
mimeType
字符串构造 DataFlavor
。该字符串可以指定 "class=DataFlavor
。如果字符串不包含 "class=" 参数,则使用 java.io.InputStream
作为默认值。
mimeType
- 用于标识此 flavor 的 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
类的名称、此 flavor 的 MIME 类型及其表示形式类。如果此 flavor 具有 "text" 的基本 MIME 类型、支持 charset 参数并且具有编码的表示形式,则还包括 flavor 的 charset。有关支持 charset 参数的文本 flavor 列表,请参阅 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>"Sun 的 Microsoft Windows 实现使用编码
utf-16le
。Sun 的 Solaris 和 Linux 实现使用编码 iso-10646-ucs-2
。
DataFlavor
public static final DataFlavor selectBestTextFlavor(DataFlavor[] availableFlavors)
DataFlavor
数组中选择最佳文本 DataFlavor
。只能选择 DataFlavor.stringFlavor
、等效 flavor 和具有基本 MIME "text" 类型的 flavor。
首先 Flavor 按照其 MIME 类型排序,顺序如下所示:
例如,在 "text/html" 上选择 "text/sgml",在 DataFlavor.plainTextFlavor
上选择 DataFlavor.stringFlavor
。
如果两个或更多 flavor 共享数组中的最佳 MIME 类型,则需要检查 MIME 类型以查看它是否支持 charset 参数。
以下 MIME 类型支持(或被视为支持)charset 参数:
DataFlavor
中。如果是这样,则 JRE 将假定从该点开始,MIME 类型支持 charset 参数,并且不再进行检查。如果没有显式列入该参数,则 JRE 将假定从该点开始,MIME 类型不支持 charset 参数,并且不再进行检查。因为此检查是在任意选择的 DataFlavor
上执行的,所以如果 MIME 类型支持 charset 参数,开发人员就必须确保所有具有该 "text/<other>" MIME 类型的 DataFlavor
指定了该参数。开发人员不应该依赖 JRE 用平台的默认 charset 来替代 "text/<other>" DataFlavor。不遵守此限制将导致不确定的行为。
如果数组中的最佳 MIME 类型不支持 charset 参数,则共享 MIME 类型的 flavor 按照其表示形式类排序,顺序如下所示:java.io.InputStream
、java.nio.ByteBuffer
、[B
、<其他>。
如果两个或多个 flavor 共享最佳表示形式类,或者任何 flavor 都不具有三个指定的表示形式中的一个,则随意地选择这些 flavor 中的一个。
如果数组中的最佳 MIME 类型支持 charset 参数,则共享 MIME 类型的 flavor 按照其表示形式类排序,顺序如下所示:java.io.Reader
、java.lang.String
、java.nio.CharBuffer
、[C
、<其他>。
如果两个或多个 flavor 共享最佳表示形式类,并且该表示形式是明确列出的四个表示形式中的一个,则非随意地选择这些 flavor 中的一个。但是,如果任何 flavor 都不是四个指定的表示形式中的一个,则通过其 charset 对 flavor 排序。Unicode charset,如 "UTF-16"、"UTF-8"、"UTF-16BE"、"UTF-16LE" 及其别名被认为是最佳的。其次选择平台默认的 charset 及其别名。"US-ASCII" 及其别名最差。所有其他 charset 都是按字母顺序选择的,但是只考虑 Java 平台的此实现所支持的 charset。
如果两个或更多 flavor 共享最佳 charset,则 flavor 再次按照其表示形式类排序,顺序如下所示:java.io.InputStream
、java.nio.ByteBuffer
、[B
、<其他>。
如果两个或多个 flavor 共享最佳表示形式类,或者任何 flavor 都不具有三个指定的表示形式中的一个,则非随意地选择这些 flavor 中的一个。
availableFlavors
- 可用 DataFlavor
的数组
availableFlavors
为 null
、长度为零或包含非文本 flavor,则返回 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
。
因为不支持 charset 参数的文本 flavor 是以非标准格式编码的,所以应为这种 flavor 调用此方法。但是,为了维护向后兼容性,如果为这样的 flavor 调用了此方法,那么此方法会将该 flavor 视为支持 charset 参数,并相应地尝试为其解码。有关不支持 charset 参数的文本 flavor 列表,请参阅 selectBestTextFlavor
。
transferable
- 将在此 flavor 中请求其数据的 Transferable
Transferable
数据的 Reader
IllegalArgumentException
- 如果表示形式类不是上文列出的七种之一
IllegalArgumentException
- 如果 Transferable
包含 null
数据
NullPointerException
- 如果 Transferable
为 null
UnsupportedEncodingException
- 如果此 flavor 的表示形式为 java.io.InputStream
、java.nio.ByteBuffer
或 [B
,但 Java 平台的此实现不支持此 flavor 的编码
UnsupportedFlavorException
- 如果 Transferable
不支持此 flavor
IOException
- 如果因 I/O 错误而无法读取数据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)
Object
与此 DataFlavor
的相等性。当且仅当两个 DataFlavor
的 MIME 基本类型、子类型和表示形式类都相等时,才认为它们是相等的。此外,如果基本类型为 "text",子类型表示支持 charset 参数的文本 flavor,而表示形式类不是 java.io.Reader
、java.lang.String
、java.nio.CharBuffer
或 [C
,则 charset
参数也一定要相等。如果没有为一个或两个 DataFlavor
显式指定 charset,则假定使用平台默认的编码。有关支持 charset 参数的文本 flavor 列表,请参阅 selectBestTextFlavor
。
Object
中的 equals
o
- 要与 this
相比较的 Object
that
等于此 DataFlavor
,则返回 true
;否则返回 false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public boolean equals(DataFlavor that)
DataFlavor
与此 DataFlavor
的相等性。当且仅当两个 DataFlavor
的 MIME 基本类型、子类型和表示形式类都相等时,才认为它们是相等的。此外,如果基本类型为 "text",子类型表示支持 charset 参数的文本 flavor,而表示形式类不是 java.io.Reader
、java.lang.String
、java.nio.CharBuffer
或 [C
,则 charset
参数也一定要相等。如果没有为一个或两个 DataFlavor
显式指定 charset,则假定使用平台默认的编码。有关支持 charset 参数的文本 flavor 的列表,请参阅 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
的哈希码。对于两个相等的 DataFlavor
,其哈希码也相等。对于与 DataFlavor.equals(String)
匹配的 String
,不保证 DataFlavor
的哈希码等于 String
的哈希码。
Object
中的 hashCode
DataFlavor
的哈希码Object.equals(java.lang.Object)
,
Hashtable
public boolean match(DataFlavor that)
DataFlavor
与此 DataFlavor
的相等性。当且仅当两个 DataFlavor
的 MIME 基本类型、子类型和表示形式类都相等时,才认为它们是相等的。此外,如果基本类型为 "text",子类型表示支持 charset 参数的文本 flavor,而表示形式类不是 java.io.Reader
、java.lang.String
、java.nio.CharBuffer
或 [C
,则 charset
参数也一定要相等。如果没有为一个或两个 DataFlavor
显式指定 charset,则假定使用平台默认的编码。有关支持 charset 参数的文本 flavor 的列表,请参阅 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
,则返回 true。public boolean isFlavorSerializedObjectType()
DataFlavor
表示序列化对象,则返回 true。
DataFlavor
表示序列化对象,则返回 true。public boolean isFlavorRemoteObjectType()
DataFlavor
表示远程对象,则返回 true。
DataFlavor
表示远程对象,则返回 true。public boolean isFlavorJavaFileListType()
DataFlavor
表示 File 对象列表,则返回 true。
DataFlavor
表示 File 对象列表,则返回 true。public boolean isFlavorTextType()
DataFlavor
是否是 Java 平台此实现的有效文本 flavor。只有等于 DataFlavor.stringFlavor
和 DataFlavor
,并且其基本 MIME 类型为 "text" 的 flavor 才是有效的文本 flavor。
如果此 flavor 支持 charset 参数,则它必须等于 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
,则此 flavor 的 charset
参数必须受 Java 平台此实现的支持。如果未指定 charset,则假定使用始终受支持的平台默认 charset。
如果此 flavor 不支持 charset 参数,则其表示形式必须为 java.io.InputStream
、java.nio.ByteBuffer
或 [B
。
有关支持 charset 参数的文本 flavor 的列表,请参阅 selectBestTextFlavor
。
DataFlavor
为上述有效文本 flavor,则返回 true
;否则返回 false
selectBestTextFlavor(java.awt.datatransfer.DataFlavor[])
public void writeExternal(ObjectOutput os) throws IOException
DataFlavor
。
Externalizable
中的 writeExternal
os
- 要写入对象的流
IOException
- 包含可能发生的所有 I/O 异常public void readExternal(ObjectInput is) throws IOException, ClassNotFoundException
DataFlavor
。
Externalizable
中的 readExternal
is
- 为了恢复对象而从中读取数据的流
IOException
- 如果发生 I/O 错误
ClassNotFoundException
- 如果无法找到需要恢复的某个对象的类。public Object clone() throws CloneNotSupportedException
DataFlavor
的副本。
Object
中的 clone
DataFlavor
的副本
CloneNotSupportedException
- 如果对象的类不支持 Cloneable
接口,则重写 clone
方法的子类也会抛出此异常,以指示无法复制某个实例。Cloneable
@Deprecated protected String normalizeMimeTypeParameter(String parameterName, String parameterValue)
DataFlavor
调用此方法可以使 DataFlavor
的子类处理特定参数,如文本/纯文本 charset
参数,其值是区分大小写的。(假定 MIME 类型参数值区分大小写。)
为每个参数名/值对调用此方法,应该返回 parameterValue
的标准化表示形式。
从 1.1 版本开始,此实现不再调用此方法。
@Deprecated protected String normalizeMimeType(String mimeType)
DataFlavor
子类型有机会更改实现 MIME 类型标准化的方式。一种可能的使用情况是添加默认的参数/值对,以防传入的 MIME 类型字符串中参数/值对不存在的情况。
从 1.1 版本开始,此实现不再调用此方法。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。