|
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 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。