javax.activation

接口
异常
public interface DataContentHandler

DataContentHandler 接口由可用于扩展 Transferable 接口的 DataHandler 实现性能的对象来实现。通过 DataContentHandlers 可扩展该框架,使它能够将流转入对象,并能将对象写入流。

应用程序通常不直接调用 DataContentHandler 中的方法。相反,应用程序调用 DataHandler 中的等效方法。DataHandler 将使用当前 DataContentHandlerFactory 尝试找到与其 MIME 类型对应的恰当 DataContentHandler。然后,DataHandler 调用到该 DataContentHandlerthen 中的方法。

从以下版本开始:
1.6

方法摘要
 Object getContent(DataSource ds)
          返回一个对象,该对象表示其首选形式的数据。
 Object getTransferData(DataFlavor df, DataSource ds)
          返回一个对象,该对象表示将要传输的数据。
 DataFlavor[] getTransferDataFlavors()
          返回一个 DataFlavor 对象数组,这些对象指示可用于提供数据的 flavor。
 void writeTo(Object obj, String mimeType, OutputStream os)
          将对象转换为指定 MIME 类型的字节流,并将其写入输出流。
 

方法详细信息

getTransferDataFlavors

DataFlavor[] getTransferDataFlavors()
返回一个 DataFlavor 对象数组,这些对象指示可用于提供数据的 flavor。该数组应该根据提供数据的首选项来排序(从描述最多的到描述最少的)。

返回:
DataFlavor。

getTransferData

Object getTransferData(DataFlavor df,
                       DataSource ds)
                       throws UnsupportedFlavorException,
                              IOException
返回一个对象,该对象表示将要传输的数据。返回的对象的类是由该 flavor 的表示形式类定义的。

参数:
df - 表示所请求类型的 DataFlavor。
ds - 表示要转换的数据的 DataSource。
返回:
构造的对象
抛出:
UnsupportedFlavorException - 如果处理程序不支持所请求的 flavor
IOException - 如果数据不能被访问

getContent

Object getContent(DataSource ds)
                  throws IOException
返回一个对象,该对象表示其首选形式的数据。通常,这将是 getTransferDataFlavors 方法返回的第一个 DataFlavor 所描述的形式。

参数:
ds - 表示要转换的数据的 DataSource。
返回:
构造的对象。
抛出:
IOException - 如果数据不能被访问

writeTo

void writeTo(Object obj,
             String mimeType,
             OutputStream os)
             throws IOException
将对象转换为指定 MIME 类型的字节流,并将其写入输出流。

参数:
obj - 要转换的对象。
mimeType - 所请求的结果字节流的 MIME 类型。
os - 要写入转换的字节流的输出流。
抛出:
IOException - 写入流时出现错误