729 lines
36 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.activation
</div>
<h2 class="title" title="Class DataHandler">Class DataHandler</h2>
</div><div class="contentContainer">
<ul class="inheritance">
<li><a href="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>javax.activation.DataHandler</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
All Implemented Interfaces:
</dt>
<dd>
<span><a href="../../java/awt/datatransfer/Transferable.html" title="java.awt.datatransfer中的接口">Transferable</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public class <span class="typeNameLabel">DataHandler</span>
extends <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>
implements <a href="../../java/awt/datatransfer/Transferable.html" title="interface in java.awt.datatransfer">Transferable</a></pre>
<div class="block">
<span>DataHandler类为许多不同来源和格式的数据提供了一致的界面。</span>
<span>它使用DataContentHandlers管理简单的流到字符串转换和相关操作。</span>
<span>它提供对可以对数据操作的命令的访问。</span>
<span>命令是使用CommandMap找到的。</span>
<p> <span><b>DataHandler和可传输接口</b></span> </p>
<p> <span>DataHandler实现了可传输接口以便数据可用于AWT数据传输操作如剪切和粘贴和拖放。</span> <span>Transferable接口的实现依赖于与DataHandler的特定实例中表示的数据的MIME类型相对应的已安装DataContentHandler对象的可用性。</span> </p>
<p> <span><b>DataHandler和CommandMaps</b></span> </p>
<p> <span>DataHandler在跟踪它使用为命令服务请求当前的CommandMap的<code>getCommand</code> <code>getAllCommands</code> <code>getPreferredCommands</code> )。</span> <span>DataHandler的每个实例可能都有一个与它相关联的CommandMap使用<code>setCommandMap</code>方法。</span> <span>如果没有设置CommandMapDataHandler会在<code>getDefaultCommandMap</code>中调用<code>getDefaultCommandMap</code>方法,并使用它返回的值。</span> <span><i>的CommandMap</i>以获取更多信息。</span> </p>
<p> <span><b>DataHandler和URL</b></span> </p>
<p> <span>当使用URL构造时当前的DataHandler实现创建一个URLDataSource的私有实例。</span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.6
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/activation/CommandMap.html" title="javax.activation中的类"><code>CommandMap</code></a> <a href="../../javax/activation/DataContentHandler.html" title="javax.activation中的接口"><code>DataContentHandler</code></a> <a href="../../javax/activation/DataSource.html" title="javax.activation中的接口"><code>DataSource</code></a> <a href="../../javax/activation/URLDataSource.html" title="javax.activation中的类"><code>URLDataSource</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- --> </a> <h3>构造方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
<caption>
<span>构造方法</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#DataHandler-javax.activation.DataSource-">DataHandler</a></span>(<a href="../../javax/activation/DataSource.html" title="interface in javax.activation">DataSource</a> ds)</code>
<div class="block">
创建引用指定的DataSource的
<code>DataHandler</code>实例。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#DataHandler-java.lang.Object-java.lang.String-">DataHandler</a></span>(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a> obj, <a href="../../java/lang/String.html" title="class in java.lang">String</a> mimeType)</code>
<div class="block">
创建一个
<code>DataHandler</code>此MIME类型对象的
<code>DataHandler</code>实例。
</div> </td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#DataHandler-java.net.URL-">DataHandler</a></span>(<a href="../../java/net/URL.html" title="class in java.net">URL</a> url)</code>
<div class="block">
创建引用URL的
<code>DataHandler</code>实例。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- --> </a> <h3>方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption>
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t1"><span><a href="javascript:show(1);">静态方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</a></span><span class="tabEnd"> </span></span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor" id="i0">
<td class="colFirst"><code><a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getAllCommands--">getAllCommands</a></span>()</code>
<div class="block">
返回此类型数据的所有命令。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getBean-javax.activation.CommandInfo-">getBean</a></span>(<a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a> cmdinfo)</code>
<div class="block">
一个方便的方法它接受CommandInfo对象并实例化相应的命令通常是一个JavaBean组件。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getCommand-java.lang.String-">getCommand</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a> cmdName)</code>
<div class="block">
获取命令
<i>cmdName</i>
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getContent--">getContent</a></span>()</code>
<div class="block">
以其首选对象形式返回数据。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getContentType--">getContentType</a></span>()</code>
<div class="block">
返回从源对象检索的此对象的MIME类型。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code><a href="../../javax/activation/DataSource.html" title="interface in javax.activation">DataSource</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getDataSource--">getDataSource</a></span>()</code>
<div class="block">
返回与此DataHandler实例关联的DataSource。
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code><a href="../../java/io/InputStream.html" title="class in java.io">InputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getInputStream--">getInputStream</a></span>()</code>
<div class="block">
获取此对象的InputStream。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getName--">getName</a></span>()</code>
<div class="block">
返回数据对象的名称。
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code><a href="../../java/io/OutputStream.html" title="class in java.io">OutputStream</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getOutputStream--">getOutputStream</a></span>()</code>
<div class="block">
获取此DataHandler的OutputStream以允许覆盖底层数据。
</div> </td>
</tr>
<tr class="rowColor" id="i9">
<td class="colFirst"><code><a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getPreferredCommands--">getPreferredCommands</a></span>()</code>
<div class="block">
返回此类型数据的
<i>首选</i>命令。
</div> </td>
</tr>
<tr class="altColor" id="i10">
<td class="colFirst"><code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getTransferData-java.awt.datatransfer.DataFlavor-">getTransferData</a></span>(<a href="../../java/awt/datatransfer/DataFlavor.html" title="class in java.awt.datatransfer">DataFlavor</a> flavor)</code>
<div class="block">
返回表示要传输的数据的对象。
</div> </td>
</tr>
<tr class="rowColor" id="i11">
<td class="colFirst"><code><a href="../../java/awt/datatransfer/DataFlavor.html" title="class in java.awt.datatransfer">DataFlavor</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#getTransferDataFlavors--">getTransferDataFlavors</a></span>()</code>
<div class="block">
返回此数据可用的DataFlavors。
</div> </td>
</tr>
<tr class="altColor" id="i12">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#isDataFlavorSupported-java.awt.datatransfer.DataFlavor-">isDataFlavorSupported</a></span>(<a href="../../java/awt/datatransfer/DataFlavor.html" title="class in java.awt.datatransfer">DataFlavor</a> flavor)</code>
<div class="block">
返回此对象是否支持指定的数据flavor。
</div> </td>
</tr>
<tr class="rowColor" id="i13">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#setCommandMap-javax.activation.CommandMap-">setCommandMap</a></span>(<a href="../../javax/activation/CommandMap.html" title="class in javax.activation">CommandMap</a> commandMap)</code>
<div class="block">
设置CommandMap以供DataHandler使用。
</div> </td>
</tr>
<tr class="altColor" id="i14">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#setDataContentHandlerFactory-javax.activation.DataContentHandlerFactory-">setDataContentHandlerFactory</a></span>(<a href="../../javax/activation/DataContentHandlerFactory.html" title="interface in javax.activation">DataContentHandlerFactory</a> newFactory)</code>
<div class="block">
设置DataContentHandlerFactory。
</div> </td>
</tr>
<tr class="rowColor" id="i15">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/activation/DataHandler.html#writeTo-java.io.OutputStream-">writeTo</a></span>(<a href="../../java/io/OutputStream.html" title="class in java.io">OutputStream</a> os)</code>
<div class="block">
将数据写入
<code>OutputStream</code>
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../java/lang/Object.html#clone--">clone</a>, <a href="../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../java/lang/Object.html#notify--">notify</a>, <a href="../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../java/lang/Object.html#toString--">toString</a>, <a href="../../java/lang/Object.html#wait--">wait</a>, <a href="../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
</ul> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="DataHandler-javax.activation.DataSource-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>DataHandler</h4> <pre>public DataHandler(<a href="../../javax/activation/DataSource.html" title="interface in javax.activation">DataSource</a> ds)</pre>
<div class="block">
<span>创建引用指定的DataSource的<code>DataHandler</code>实例。</span>
<span>数据以字节流形式存在。</span>
<span>DataSource将提供一个InputStream来访问数据。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>ds</code> - DataSource
</dd>
</dl> </li>
</ul> <a name="DataHandler-java.lang.Object-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>DataHandler</h4> <pre>public DataHandler(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a> obj,
<a href="../../java/lang/String.html" title="class in java.lang">String</a> mimeType)</pre>
<div class="block">
<span>创建一个<code>DataHandler</code>此MIME类型对象的<code>DataHandler</code>实例。</span>
<span>当应用程序已经具有Java对象形式的数据的内存中表示时将使用此构造函数。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>obj</code> - Java对象
</dd>
<dd>
<code>mimeType</code> - 对象的MIME类型
</dd>
</dl> </li>
</ul> <a name="DataHandler-java.net.URL-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>DataHandler</h4> <pre>public DataHandler(<a href="../../java/net/URL.html" title="class in java.net">URL</a> url)</pre>
<div class="block">
<span>创建引用URL的<code>DataHandler</code>实例。</span>
<span>DataHandler内部创建一个<code>URLDataSource</code>实例来表示URL。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>url</code> - 一个URL对象
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="getDataSource--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getDataSource</h4> <pre>public <a href="../../javax/activation/DataSource.html" title="interface in javax.activation">DataSource</a> getDataSource()</pre>
<div class="block">
<span>返回与此DataHandler实例关联的DataSource。</span>
<p> <span>对于已使用DataSource实例化的DataHandler此方法返回用于创建DataHandler对象的DataSource。</span> <span>在其他情况下DataHandler根据用于构造DataHandler的数据构建DataSource。</span> <span>为DataHandler创建的DataSource <b></b>实例化DataSource为缓存高性能的原因。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
此DataHandler的有效DataSource对象
</dd>
</dl> </li>
</ul> <a name="getName--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getName</h4> <pre>public <a href="../../java/lang/String.html" title="class in java.lang">String</a> getName()</pre>
<div class="block">
<span>返回数据对象的名称。</span>
<span>如果该DataHandler是使用DataSource创建的则该方法调用到<code>DataSource.getName</code>方法,否则返回<i>null</i></span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
对象的名称
</dd>
</dl> </li>
</ul> <a name="getContentType--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getContentType</h4> <pre>public <a href="../../java/lang/String.html" title="class in java.lang">String</a> getContentType()</pre>
<div class="block">
<span>返回从源对象检索的此对象的MIME类型。</span>
<span>请注意,这是具有参数的<i>完整</i>类型。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
MIME类型
</dd>
</dl> </li>
</ul> <a name="getInputStream--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getInputStream</h4> <pre>public <a href="../../java/io/InputStream.html" title="class in java.io">InputStream</a> getInputStream()
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>获取此对象的InputStream。</span>
<p> <span>对于使用DataSource实例化的DataHandlerDataHandler调用<code>DataSource.getInputStream</code>方法并将结果返回给调用者。</span> </p>
<p> <span>对于使用Object实例化的DataHandlerDataHandler首先尝试为对象找到一个DataContentHandler。</span> <span>如果DataHandler找不到此MIME类型的DataContentHandler则会引发UnsupportedDataTypeException。</span> <span>如果成功,它将创建一个管道和一个线程。</span> <span>线程使用DataContentHandler的<code>writeTo</code>方法将流数据写入管道的一端。</span> <span>管道的另一端返回给调用者。</span> <span>由于创建线程以复制数据因此在复制期间可能发生的IOExceptions无法传播回调用者。</span> <span>结果是一个空的流。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
InputStream表示此数据
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果发生I / O错误
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/activation/DataContentHandler.html#writeTo-java.lang.Object-java.lang.String-java.io.OutputStream-"><code>DataContentHandler.writeTo(java.lang.Object, java.lang.String, java.io.OutputStream)</code></a> <a href="../../javax/activation/UnsupportedDataTypeException.html" title="javax.activation中的类"><code>UnsupportedDataTypeException</code></a></span>
</dd>
</dl> </li>
</ul> <a name="writeTo-java.io.OutputStream-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>writeTo</h4> <pre>public void writeTo(<a href="../../java/io/OutputStream.html" title="class in java.io">OutputStream</a> os)
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>将数据写入<code>OutputStream</code></span>
<p> <span>如果DataHandler是使用DataSource创建的writeTo将检索InputStream并将InputStream中的字节复制到传入的OutputStream。</span> </p>
<p> <span>如果DataHandler是使用对象创建的writeTo将检索对象类型的DataContentHandler。</span> <span>如果的DataContentHandler被发现它调用<code>writeTo</code>的方法<code>DataContentHandler</code></span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>os</code> - 要写入的OutputStream
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果发生I / O错误
</dd>
</dl> </li>
</ul> <a name="getOutputStream--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getOutputStream</h4> <pre>public <a href="../../java/io/OutputStream.html" title="class in java.io">OutputStream</a> getOutputStream()
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>获取此DataHandler的OutputStream以允许覆盖底层数据。</span>
<span>如果DataHandler是用DataSource创建的则调用DataSource的<code>getOutputStream</code>方法。</span>
<span>否则返回<code>null</code></span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
OutputStream
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/activation/DataSource.html#getOutputStream--"><code>DataSource.getOutputStream()</code></a> <a href="../../javax/activation/URLDataSource.html" title="javax.activation中的类"><code>URLDataSource</code></a></span>
</dd>
</dl> </li>
</ul> <a name="getTransferDataFlavors--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getTransferDataFlavors</h4> <pre>public <a href="../../java/awt/datatransfer/DataFlavor.html" title="class in java.awt.datatransfer">DataFlavor</a>[] getTransferDataFlavors()</pre>
<div class="block">
<span>返回此数据可用的DataFlavors。</span>
<p> <span>返回一个DataFlavor对象数组表示可以提供数据的风格。数组通常根据提供数据的偏好进行排序从最丰富的描述到最不丰富的描述。</span> </p>
<p> <span>DataHandler尝试查找与数据的MIME类型相对应的DataContentHandler。</span> <span>如果找到DataHandler会调用DataContentHandler的<code>getTransferDataFlavors</code>方法。</span> </p>
<p> <span>如果<i>无法</i>找到DataContentHandler并且如果使用DataSource或URL创建了DataHandler则会返回一个表示此对象的MIME类型和<code>java.io.InputStream</code>类的<code>java.io.InputStream</code></span> <span>如果使用对象和MIME类型创建了DataHandler那么getTransferDataFlavors将返回一个表示此对象的MIME类型和对象类的DataFlavor。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../java/awt/datatransfer/Transferable.html#getTransferDataFlavors--">getTransferDataFlavors</a></code>在界面
<code><a href="../../java/awt/datatransfer/Transferable.html" title="interface in java.awt.datatransfer">Transferable</a></code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
一系列可以传输此数据的数据风格
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/activation/DataContentHandler.html#getTransferDataFlavors--"><code>DataContentHandler.getTransferDataFlavors()</code></a>
</dd>
</dl> </li>
</ul> <a name="isDataFlavorSupported-java.awt.datatransfer.DataFlavor-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>isDataFlavorSupported</h4> <pre>public boolean isDataFlavorSupported(<a href="../../java/awt/datatransfer/DataFlavor.html" title="class in java.awt.datatransfer">DataFlavor</a> flavor)</pre>
<div class="block">
<span>返回此对象是否支持指定的数据flavor。</span>
<p> <span>该方法遍历从getTransferDataFlavors返回的<code>getTransferDataFlavors</code> ,将每个与指定的风味进行比较。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../java/awt/datatransfer/Transferable.html#isDataFlavorSupported-java.awt.datatransfer.DataFlavor-">isDataFlavorSupported</a></code>在界面
<code><a href="../../java/awt/datatransfer/Transferable.html" title="interface in java.awt.datatransfer">Transferable</a></code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>flavor</code> - 数据所需的风味
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果支持数据风格则为true
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/activation/DataHandler.html#getTransferDataFlavors--"><code>getTransferDataFlavors()</code></a>
</dd>
</dl> </li>
</ul> <a name="getTransferData-java.awt.datatransfer.DataFlavor-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getTransferData</h4> <pre>public <a href="../../java/lang/Object.html" title="class in java.lang">Object</a> getTransferData(<a href="../../java/awt/datatransfer/DataFlavor.html" title="class in java.awt.datatransfer">DataFlavor</a> flavor)
throws <a href="../../java/awt/datatransfer/UnsupportedFlavorException.html" title="class in java.awt.datatransfer">UnsupportedFlavorException</a>,
<a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>返回表示要传输的数据的对象。</span>
<span>返回的对象的类由数据风格的表示类定义。</span>
<p> <span><b>对于使用DataSources或URL创建的DataHandler</b></span> </p>
<p> <span>DataHandler尝试为此MIME类型定位DataContentHandler。</span> <span>如果找到则DataFlavor中传递的数据和数据类型将传递给其<code>getTransferData</code>方法。</span> <span>如果DataHandler找不到DataContentHandler并且flavor指定了此对象的MIME类型和<code>java.io.InputStream</code>则返回此对象的InputStream。</span> <span>否则会引发UnsupportedFlavorException。</span> </p>
<p> <span><b>对于使用对象创建的DataHandler</b></span> </p>
<p> <span>DataHandler尝试为此MIME类型定位DataContentHandler。</span> <span>如果找到则DataFlavor中传递的数据和数据类型将传递给其getTransferData方法。</span> <span>如果DataHandler找不到DataContentHandler并且flavor指定此对象的MIME类型及其类则会返回此DataHandler的引用对象。</span> <span>否则会引发UnsupportedFlavorException。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../java/awt/datatransfer/Transferable.html#getTransferData-java.awt.datatransfer.DataFlavor-">getTransferData</a></code>在界面
<code><a href="../../java/awt/datatransfer/Transferable.html" title="interface in java.awt.datatransfer">Transferable</a></code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>flavor</code> - 数据所要求的风味
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
物体
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/awt/datatransfer/UnsupportedFlavorException.html" title="class in java.awt.datatransfer">UnsupportedFlavorException</a></code> - 如果数据无法转换为请求的风味
</dd>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果发生I / O错误
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/activation/ActivationDataFlavor.html" title="javax.activation中的类"><code>ActivationDataFlavor</code></a></span>
</dd>
</dl> </li>
</ul> <a name="setCommandMap-javax.activation.CommandMap-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setCommandMap</h4> <pre>public void setCommandMap(<a href="../../javax/activation/CommandMap.html" title="class in javax.activation">CommandMap</a> commandMap)</pre>
<div class="block">
<span>设置CommandMap以供DataHandler使用。</span>
<span>将其设置为<code>null</code>会导致CommandMap恢复为<code>CommandMap.getDefaultCommandMap</code>方法返回的<code>CommandMap.getDefaultCommandMap</code></span>
<span>更改CommandMap或将其设置为<code>null</code> 将清除从上一个CommandMap缓存的任何数据。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>commandMap</code> - 要在此DataHandler中使用的CommandMap
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/activation/CommandMap.html#setDefaultCommandMap-javax.activation.CommandMap-"><code>CommandMap.setDefaultCommandMap(javax.activation.CommandMap)</code></a>
</dd>
</dl> </li>
</ul> <a name="getPreferredCommands--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getPreferredCommands</h4> <pre>public <a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a>[] getPreferredCommands()</pre>
<div class="block">
<span>返回此类型数据的<i>首选</i>命令。</span>
<span>此方法调用<code>getPreferredCommands</code>与此DataHandler实例关联的方法的CommandMap。</span>
<span>此方法返回一个表示可用命令子集的数组。</span>
<span>在存在由DataHandler表示的MIME类型的多个命令的情况下安装的CommandMap将选择相应的命令。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
表示首选命令的CommandInfo对象
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/activation/CommandMap.html#getPreferredCommands-java.lang.String-"><code>CommandMap.getPreferredCommands(java.lang.String)</code></a>
</dd>
</dl> </li>
</ul> <a name="getAllCommands--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getAllCommands</h4> <pre>public <a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a>[] getAllCommands()</pre>
<div class="block">
<span>返回此类型数据的所有命令。</span>
<span>此方法返回一个包含此DataHandler表示的数据类型的所有命令的数组。</span>
<span>此DataHandler表示的底层数据的MIME类型用于调用与此DataHandler关联的CommandMap的<code>getAllCommands</code>方法。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
表示所有命令的CommandInfo对象
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/activation/CommandMap.html#getAllCommands-java.lang.String-"><code>CommandMap.getAllCommands(java.lang.String)</code></a>
</dd>
</dl> </li>
</ul> <a name="getCommand-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getCommand</h4> <pre>public <a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a> getCommand(<a href="../../java/lang/String.html" title="class in java.lang">String</a> cmdName)</pre>
<div class="block">
<span>获取命令<i>cmdName</i></span>
<span>使用由DataHandler中安装的CommandMap定义的搜索语义。</span>
<span>此DataHandler表示的基础数据的MIME类型用于调用与此DataHandler关联的CommandMap的<code>getCommand</code>方法。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>cmdName</code> - 命令名
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
CommandInfo对应于该命令
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/activation/CommandMap.html#getCommand-java.lang.String-java.lang.String-"><code>CommandMap.getCommand(java.lang.String, java.lang.String)</code></a>
</dd>
</dl> </li>
</ul> <a name="getContent--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getContent</h4> <pre>public <a href="../../java/lang/Object.html" title="class in java.lang">Object</a> getContent()
throws <a href="../../java/io/IOException.html" title="class in java.io">IOException</a></pre>
<div class="block">
<span>以其首选对象形式返回数据。</span>
<p> <span>如果使用对象实例化了DataHandler则返回该对象。</span> </p>
<p> <span>如果DataHandler用DataSource实例化则此方法使用DataContentHandler返回此DataHandler表示的数据的内容对象。</span> <span>如果没有<code>DataContentHandler</code>可以为这个数据类型可以发现的DataHandler返回数据的InputStream。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
内容。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/io/IOException.html" title="class in java.io">IOException</a></code> - 如果在此操作期间发生IOException。
</dd>
</dl> </li>
</ul> <a name="getBean-javax.activation.CommandInfo-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getBean</h4> <pre>public <a href="../../java/lang/Object.html" title="class in java.lang">Object</a> getBean(<a href="../../javax/activation/CommandInfo.html" title="class in javax.activation">CommandInfo</a> cmdinfo)</pre>
<div class="block">
<span>一个方便的方法它接受CommandInfo对象并实例化相应的命令通常是一个JavaBean组件。</span>
<p> <span>这种方法调用CommandInfo的<code>getCommandObject</code>方法与<code>ClassLoader</code>用于加载<code>javax.activation.DataHandler</code>类本身。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>cmdinfo</code> - 与命令对应的CommandInfo
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
实例化的命令对象
</dd>
</dl> </li>
</ul> <a name="setDataContentHandlerFactory-javax.activation.DataContentHandlerFactory-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>setDataContentHandlerFactory</h4> <pre>public static void setDataContentHandlerFactory(<a href="../../javax/activation/DataContentHandlerFactory.html" title="interface in javax.activation">DataContentHandlerFactory</a> newFactory)</pre>
<div class="block">
<span>设置DataContentHandlerFactory。</span>
<span>首先调用DataContentHandlerFactory来查找DataContentHandlers。</span>
<span>DataContentHandlerFactory只能设置一次。</span>
<p> <span>如果DataContentHandlerFactory已经被设置这个方法会抛出一个错误。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>newFactory</code> - DataContentHandlerFactory
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/Error.html" title="class in java.lang">Error</a></code> - 如果工厂已经定义。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/activation/DataContentHandlerFactory.html" title="javax.activation中的接口"><code>DataContentHandlerFactory</code></a></span>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>