- java.lang.Object
-
- java.awt.datatransfer.SystemFlavorMap
-
- 实现的所有接口
-
FlavorMap,FlavorTable
public final class SystemFlavorMap extends Object implements FlavorMap, FlavorTable
SystemFlavorMap是“natives”(字符串)之间的可配置映射,它对应于特定于平台的数据格式,以及“flavors”(DataFlavors),它们对应于与平台无关的MIME类型。 数据传输子系统使用此映射在Java和本机应用程序之间以及不同VM中的Java应用程序之间传输数据。- 从以下版本开始:
- 1.2
-
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 voidaddFlavorForUnencodedNative(String nat, DataFlavor flav)添加从单个String本机到单个DataFlavor。voidaddUnencodedNativeForFlavor(DataFlavor flav, String nat)将指定的DataFlavor(以及所有DataFlavor等于指定的DataFlavor)的映射添加到指定的String本机。static DataFlavordecodeDataFlavor(String nat)解码String本机用作DataFlavor。static StringdecodeJavaMIMEType(String nat)解码String本机以用作Java MIME类型。static StringencodeDataFlavor(DataFlavor flav)编码DataFlavor以用作String本机。static StringencodeJavaMIMEType(String mimeType)编码MIME类型以用作String本机。static FlavorMapgetDefaultFlavorMap()返回此线程的ClassLoader的默认FlavorMap。List<DataFlavor>getFlavorsForNative(String nat)返回List的DataFlavor,数据传输子系统可以将指定的String本机转换为String。Map<String,DataFlavor>getFlavorsForNatives(String[] natives)返回Map指定的Stringnative到其最优选DataFlavor。List<String>getNativesForFlavor(DataFlavor flav)返回List的String本机,数据传输子系统可以将指定的DataFlavor转换DataFlavor。Map<DataFlavor,String>getNativesForFlavors(DataFlavor[] flavors)将指定的DataFlavors的Map返回到其最受欢迎的String本机。static booleanisJavaMIMEType(String str)返回指定的String是否为编码的Java MIME类型。voidsetFlavorsForNative(String nat, DataFlavor[] flavors)放弃指定的当前映射String本土,并创建新的映射到指定DataFlavor秒。voidsetNativesForFlavor(DataFlavor flav, String[] natives)丢弃当前映射指定DataFlavor和所有DataFlavor能胜任指定DataFlavor,并创建新的映射到指定String当地人。
-
-
-
方法详细信息
-
getDefaultFlavorMap
public static FlavorMap getDefaultFlavorMap()
返回此线程的ClassLoader的默认FlavorMap。- 结果
- 此线程的ClassLoader的默认FlavorMap
-
getNativesForFlavor
public List<String> getNativesForFlavor(DataFlavor flav)
返回List的String本机,数据传输子系统可以将指定的DataFlavor转换为该本机。List将从最佳原生分类到最差分类。 也就是说,第一个本机将最好地将指定风格的数据反映到底层本机平台。如果指定的
DataFlavor以前未知数据传输子系统且数据传输子系统无法将此DataFlavor为任何现有本机,则调用此方法将在指定的DataFlavor与其MIME的编码版本之间建立双向映射键入为其本机。- Specified by:
-
getNativesForFlavor,界面FlavorTable - 参数
-
flav- 应返回其对应的本机的DataFlavor。 如果指定了null,null非确定性顺序返回数据传输子系统当前已知的所有本机。 - 结果
-
java.util.Listofjava.lang.String对象是平台特定数据格式的特定于平台的表示 - 从以下版本开始:
- 1.4
- 另请参见:
-
encodeDataFlavor(java.awt.datatransfer.DataFlavor)
-
getFlavorsForNative
public List<DataFlavor> getFlavorsForNative(String nat)
返回List的DataFlavor,数据传输子系统可以将指定的String本机转换为String。List将从最好的DataFlavor到最差。 也就是说,第一个DataFlavor将最好地反映Java应用程序的指定本机中的数据。如果数据传输子系统以前未知指定的本机,并且该本机已正确编码,则调用此方法将在指定的本机和
DataFlavor之间的两个方向上建立映射,其MIME类型是本机的解码版本。如果指定本机是不是正确编码的本地和本本地映射没有被篡改与
setFlavorsForNative,那么内容List与平台相关,但null不能退货。- Specified by:
-
getFlavorsForNative在界面FlavorTable - 参数
-
nat- 应返回其对应的DataFlavor的本机。 如果null指定,所有DataFlavor目前已知的数据传输子系统S IN非确定性顺序返回。 - 结果
-
java.util.ListofDataFlavor对象,指定的特定于平台的本机中的特定于平台的数据可以转换为 - 从以下版本开始:
- 1.4
- 另请参见:
-
encodeJavaMIMEType(java.lang.String)
-
getNativesForFlavors
public Map<DataFlavor,String> getNativesForFlavors(DataFlavor[] flavors)
返回Map指定的DataFlavors到其大多数首选String本地人。 对于指定的flavor,每个本机值将与getNativesForFlavor返回的List中的第一个本机值相同。如果数据传输子系统以前未知指定的
DataFlavor,则调用此方法将在指定的DataFlavor和其MIME类型的编码版本之间建立两个方向的映射作为其本机。- Specified by:
-
getNativesForFlavors在界面FlavorMap - 参数
-
flavors-的阵列DataFlavorS的将是所返回的密钥集Map。 如果null被指定时,所有的映射DataFlavor已知的数据传输子系统到其最优选的小号String当地人将被返回。 - 结果
-
java.util.MapofDataFlavors toStringnatives - 另请参见:
-
getNativesForFlavor(java.awt.datatransfer.DataFlavor),encodeDataFlavor(java.awt.datatransfer.DataFlavor)
-
getFlavorsForNatives
public Map<String,DataFlavor> getFlavorsForNatives(String[] natives)
返回Map指定的Stringnative到其最优选DataFlavor。 每个DataFlavor值将与指定原生的getFlavorsForNative返回的列表中的第一个DataFlavor相同。如果数据传输子系统以前未知指定的本机,并且该本机已正确编码,则调用此方法将在指定的本机和
DataFlavor之间的两个方向上建立映射,其MIME类型是本机的解码版本。- Specified by:
-
getFlavorsForNatives在界面FlavorMap - 参数
-
natives-的阵列StringS的将是所返回的密钥集Map。 如果null指定,所有的映射支持String当地人到其大多数首选DataFlavor旨意被退回。 - 结果
-
java.util.MapofString于DataFlavors - 另请参见:
-
getFlavorsForNative(java.lang.String),encodeJavaMIMEType(java.lang.String)
-
addUnencodedNativeForFlavor
public void addUnencodedNativeForFlavor(DataFlavor flav, String nat)
将指定的DataFlavor(以及所有DataFlavors等于指定的DataFlavor)的映射添加到指定的String本机。 与getNativesForFlavor不同,映射仅在一个方向上建立,而本机不会被编码。 要建立双向映射,请同时调用addFlavorForUnencodedNative。 新映射的优先级低于任何现有映射。 如果已存在从指定或相等的DataFlavor到指定的String本机的映射,则此方法无效。- 参数
-
flav- 映射的DataFlavor密钥 -
nat- 映射的String本机值 - 异常
-
NullPointerException- 如果NullPointerException或nat是null - 从以下版本开始:
- 1.4
- 另请参见:
-
addFlavorForUnencodedNative(java.lang.String, java.awt.datatransfer.DataFlavor)
-
setNativesForFlavor
public void setNativesForFlavor(DataFlavor flav, String[] natives)
丢弃当前映射指定DataFlavor和所有DataFlavor能胜任指定DataFlavor,并创建新的映射到指定String当地人。 与getNativesForFlavor不同,映射仅在一个方向上建立,并且本机不会被编码。 要建立双向映射,请同时致电setFlavorsForNative。 数组中的第一个本机将表示最高优先级映射。 后续本机将表示优先级降低的映射。如果数组包含几个引用相同的
String本机的元素,则此方法将为这些元素中的第一个建立新的映射,并忽略其余元素。建议客户端代码不要重置由数据传输子系统建立的映射。 此方法仅应用于应用程序级映射。
- 参数
-
flav- 映射的DataFlavor -
natives- 映射的String本机值 - 异常
-
NullPointerException- 如果NullPointerException或natives是null或者natives是否包含null元素 - 从以下版本开始:
- 1.4
- 另请参见:
-
setFlavorsForNative(java.lang.String, java.awt.datatransfer.DataFlavor[])
-
addFlavorForUnencodedNative
public void addFlavorForUnencodedNative(String nat, DataFlavor flav)
添加从单个String本机到单个DataFlavor。 与getFlavorsForNative不同,映射仅在一个方向上建立,而本机不会被编码。 要建立双向映射,请同时致电addUnencodedNativeForFlavor。 新映射的优先级低于任何现有映射。 如果已存在从指定的String本机到指定或相等的DataFlavor的映射,则此方法无效。- 参数
-
nat- 映射的String本机密钥 -
flav- 映射的值DataFlavor - 异常
-
NullPointerException- 如果nat或flav是null - 从以下版本开始:
- 1.4
- 另请参见:
-
addUnencodedNativeForFlavor(java.awt.datatransfer.DataFlavor, java.lang.String)
-
setFlavorsForNative
public void setFlavorsForNative(String nat, DataFlavor[] flavors)
放弃指定的当前映射String本土,并创建新的映射到指定DataFlavor秒。 与getFlavorsForNative不同,映射只能在一个方向上建立,而本机不需要编码。 要建立双向映射,请致电setNativesForFlavor。 阵列中的第一个DataFlavor将代表最高优先级的映射。 随后的DataFlavor将代表优先级递减的映射。如果数组包含几个引用相同的
DataFlavor的元素,则此方法将为第一个元素建立新的映射,并忽略其余元素。建议客户端代码不要重置由数据传输子系统建立的映射。 此方法仅应用于应用程序级映射。
- 参数
-
nat- 映射的String本机密钥 -
flavors- 映射的DataFlavor值 - 异常
-
NullPointerException- 如果nat或flavors是null或者如果flavors其中包含null - 从以下版本开始:
- 1.4
- 另请参见:
-
setNativesForFlavor(java.awt.datatransfer.DataFlavor, java.lang.String[])
-
encodeJavaMIMEType
public static String encodeJavaMIMEType(String mimeType)
编码MIME类型以用作String本机。 MIME类型的编码表示的格式取决于实现。 唯一的限制是:- 编码表示是
null当且仅当MIME类型String是null - 当且仅当根据
String.equals(Object)这些Strings相等时,两个非nullMIME类型String的编码表示相等
String前缀JAVA_DATAFLAVOR:。- 参数
-
mimeType- 要编码的MIME类型 - 结果
-
编码
String或null如果mimeType是null
- 编码表示是
-
encodeDataFlavor
public static String encodeDataFlavor(DataFlavor flav)
编码DataFlavor以用作String本机。 编码DataFlavor的格式取决于实现。 唯一的限制是:- 编码表示是
null,当且仅当指定DataFlavor是null或其MIME类型String是null - 当且仅当这些
DataFlavor的MIME类型Strings根据String.equals(Object)相等时,两个非nullDataFlavor与非nullMIME类型String的编码表示相等
String指定的DataFlavor前缀JAVA_DATAFLAVOR:。- 参数
-
flav- 要编码的DataFlavor - 结果
-
编码
String或null如果flav是null或者有一个nullMIME类型
- 编码表示是
-
isJavaMIMEType
public static boolean isJavaMIMEType(String str)
返回指定的String是否为编码的Java MIME类型。- 参数
-
str- 要测试的String - 结果
-
true如果String已编码; 否则为false
-
decodeJavaMIMEType
public static String decodeJavaMIMEType(String nat)
解码String本机以用作Java MIME类型。- 参数
-
nat- 要解码的String - 结果
-
解码后的Java的MIME类型,或
null如果nat未编码String天然
-
decodeDataFlavor
public static DataFlavor decodeDataFlavor(String nat) throws ClassNotFoundException
解码String本机用作DataFlavor。- 参数
-
nat- 要解码的String - 结果
-
解码的
DataFlavor,或null如果nat不是编码的String本机 - 异常
-
ClassNotFoundException- 如果未加载数据flavor的类
-
-