JavaTM 2 Platform
Standard Ed. 6

類別 java.nio.ByteBuffer
的使用

使用 ByteBuffer 的軟體套件
java.lang 提供利用 Java 程式語言進行程序設計的基礎類別。 
java.nio 定義作為資料容器的緩衝區,並提供其他 NIO 套件的概觀。 
java.nio.channels 定義了各種通道,這些通道表示到能夠執行 I/O 操作的實體(如檔案和Socket)的連接;定義了用於多路傳輸的、非阻塞 I/O 操作的選擇器。 
java.nio.charset 定義用來在位元組和 Unicode 字元之間轉換的 charset、解碼器和編碼器。 
java.security 為安全框架提供類別和介面。 
javax.crypto 為加密操作提供類別和介面。 
javax.net.ssl 提供用於安全Socket層(SSL)套件的類別。 
 

java.langByteBuffer 的使用
 

參數型別為 ByteBufferjava.lang 中的方法
protected  Class<?> ClassLoader.defineClass(String name, ByteBuffer b, ProtectionDomain protectionDomain)
          使用可選的 ProtectionDomainByteBuffer 轉換為 Class 類別的實例。
 

java.nioByteBuffer 的使用
 

java.nioByteBuffer 的子類別
 class MappedByteBuffer
          直接位元組緩衝區,其內容是檔案的記憶體映射區域。
 

返回 ByteBufferjava.nio 中的方法
static ByteBuffer ByteBuffer.allocate(int capacity)
          分派一個新的位元組緩衝區。
static ByteBuffer ByteBuffer.allocateDirect(int capacity)
          分派新的直接位元組緩衝區。
abstract  ByteBuffer ByteBuffer.asReadOnlyBuffer()
          創建共享此緩衝區內容的新的只讀位元組緩衝區。
abstract  ByteBuffer ByteBuffer.compact()
          壓縮此緩衝區(可選操作)
abstract  ByteBuffer ByteBuffer.duplicate()
          創建共享此緩衝區內容的新的位元組緩衝區。
 ByteBuffer ByteBuffer.get(byte[] dst)
          相對批量 get 方法。
 ByteBuffer ByteBuffer.get(byte[] dst, int offset, int length)
          相對批量 get 方法。
 ByteBuffer ByteBuffer.order(ByteOrder bo)
          修改此緩衝區的位元組順序。
abstract  ByteBuffer ByteBuffer.put(byte b)
          相對 put 方法(可選操作)
 ByteBuffer ByteBuffer.put(byte[] src)
          相對批量 put 方法(可選操作)
 ByteBuffer ByteBuffer.put(byte[] src, int offset, int length)
          相對批量 put 方法(可選操作)
 ByteBuffer ByteBuffer.put(ByteBuffer src)
          相對批量 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.put(int index, byte b)
          絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putChar(char value)
          用來寫入 char 值的相對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putChar(int index, char value)
          用於寫入 char 值的絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putDouble(double value)
          用於寫入 double 值的相對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putDouble(int index, double value)
          用於寫入 double 值的絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putFloat(float value)
          用於寫入 float 值的相對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putFloat(int index, float value)
          用於寫入 float 值的絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putInt(int value)
          用於寫入 int 值的相對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putInt(int index, int value)
          用於寫入 int 值的絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putLong(int index, long value)
          用於寫入 long 值的絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putLong(long value)
          用於寫入 long 值(可先操作) 的相對 put 方法。
abstract  ByteBuffer ByteBuffer.putShort(int index, short value)
          用於寫入 short 值的絕對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.putShort(short value)
          用於寫入 short 值的相對 put 方法(可選操作)
abstract  ByteBuffer ByteBuffer.slice()
          創建新的位元組緩衝區,其內容是此緩衝區內容的共享子序列。
static ByteBuffer ByteBuffer.wrap(byte[] array)
          將 byte 陣列包裹到緩衝區中。
static ByteBuffer ByteBuffer.wrap(byte[] array, int offset, int length)
          將 byte 陣列包裹到緩衝區中。
 

參數型別為 ByteBufferjava.nio 中的方法
 int ByteBuffer.compareTo(ByteBuffer that)
          將此緩衝區與另一個緩衝區進行比較。
 ByteBuffer ByteBuffer.put(ByteBuffer src)
          相對批量 put 方法(可選操作)
 

java.nio.channelsByteBuffer 的使用
 

參數型別為 ByteBufferjava.nio.channels 中的方法
abstract  int DatagramChannel.read(ByteBuffer dst)
          從此通道讀取資料電報。
abstract  int SocketChannel.read(ByteBuffer dst)
           
abstract  int FileChannel.read(ByteBuffer dst)
          將位元組序列從此通道讀入給定的緩衝區。
 int ReadableByteChannel.read(ByteBuffer dst)
          將位元組序列從此通道中讀入給定的緩衝區。
 long DatagramChannel.read(ByteBuffer[] dsts)
          從此通道讀取資料電報。
 long SocketChannel.read(ByteBuffer[] dsts)
           
 long FileChannel.read(ByteBuffer[] dsts)
          將位元組序列從此通道讀入給定的緩衝區。
 long ScatteringByteChannel.read(ByteBuffer[] dsts)
          將位元組序列從此通道讀入給定的緩衝區。
abstract  long DatagramChannel.read(ByteBuffer[] dsts, int offset, int length)
          從此通道讀取資料電報。
abstract  long SocketChannel.read(ByteBuffer[] dsts, int offset, int length)
           
abstract  long FileChannel.read(ByteBuffer[] dsts, int offset, int length)
          將位元組序列從此通道讀入給定緩衝區的子序列中。
 long ScatteringByteChannel.read(ByteBuffer[] dsts, int offset, int length)
          將位元組序列從此通道讀入給定緩衝區的子序列中。
abstract  int FileChannel.read(ByteBuffer dst, long position)
          從給定的檔案位置開始,從此通道讀取位元組序列,並寫入給定的緩衝區。
abstract  SocketAddress DatagramChannel.receive(ByteBuffer dst)
          通過此通道接收資料電報。
abstract  int DatagramChannel.send(ByteBuffer src, SocketAddress target)
          通過此通道發送資料電報。
abstract  int DatagramChannel.write(ByteBuffer src)
          將資料電報寫入此通道。
abstract  int SocketChannel.write(ByteBuffer src)
           
abstract  int FileChannel.write(ByteBuffer src)
          將位元組序列從給定的緩衝區寫入此通道。
 int WritableByteChannel.write(ByteBuffer src)
          將位元組序列從給定的緩衝區中寫入此通道。
 long DatagramChannel.write(ByteBuffer[] srcs)
          將資料電報寫入此通道。
 long SocketChannel.write(ByteBuffer[] srcs)
           
 long FileChannel.write(ByteBuffer[] srcs)
          將位元組序列從給定的緩衝區寫入此通道。
 long GatheringByteChannel.write(ByteBuffer[] srcs)
          將位元組序列從給定的緩衝區寫入此通道。
abstract  long DatagramChannel.write(ByteBuffer[] srcs, int offset, int length)
          將資料電報寫入此通道。
abstract  long SocketChannel.write(ByteBuffer[] srcs, int offset, int length)
           
abstract  long FileChannel.write(ByteBuffer[] srcs, int offset, int length)
          將位元組序列從給定緩衝區的子序列寫入此通道。
 long GatheringByteChannel.write(ByteBuffer[] srcs, int offset, int length)
          將位元組序列從給定緩衝區的子序列寫入此通道。
abstract  int FileChannel.write(ByteBuffer src, long position)
          從給定的檔案位置開始,將位元組序列從給定緩衝區寫入此通道。
 

java.nio.charsetByteBuffer 的使用
 

返回 ByteBufferjava.nio.charset 中的方法
 ByteBuffer CharsetEncoder.encode(CharBuffer in)
          把單個輸入字元緩衝區的剩餘內容編碼到新分派的位元組緩衝區的便捷方法。
 ByteBuffer Charset.encode(CharBuffer cb)
          將此 charset 中的 Unicode 字元編碼成位元組的便捷方法。
 ByteBuffer Charset.encode(String str)
          將此 charset 中的字元串編碼成位元組的便捷方法。
 

參數型別為 ByteBufferjava.nio.charset 中的方法
 CharBuffer CharsetDecoder.decode(ByteBuffer in)
          把單個輸入位元組緩衝區的剩餘內容解碼到新分派的字元緩衝區的便捷方法。
 CharBuffer Charset.decode(ByteBuffer bb)
          將此 charset 中的位元組解碼成 Unicode 字元的便捷方法。
 CoderResult CharsetDecoder.decode(ByteBuffer in, CharBuffer out, boolean endOfInput)
          從給定的輸入緩衝區中解碼盡可能多的位元組,把結果寫入給定的輸出緩衝區。
protected abstract  CoderResult CharsetDecoder.decodeLoop(ByteBuffer in, CharBuffer out)
          將一個或多個位元組解碼為一個或多個字元。
 CoderResult CharsetEncoder.encode(CharBuffer in, ByteBuffer out, boolean endOfInput)
          從給定輸入緩衝區中編碼盡可能多的字元,把結果寫入給定的輸出緩衝區。
protected abstract  CoderResult CharsetEncoder.encodeLoop(CharBuffer in, ByteBuffer out)
          將一個或多個字元編碼為一個或多個位元組。
 CoderResult CharsetEncoder.flush(ByteBuffer out)
          刷新此編碼器。
protected  CoderResult CharsetEncoder.implFlush(ByteBuffer out)
          刷新此編碼器。
 

java.securityByteBuffer 的使用
 

參數型別為 ByteBufferjava.security 中的方法
protected  Class<?> SecureClassLoader.defineClass(String name, ByteBuffer b, CodeSource cs)
          使用可選的 CodeSource 將 ByteBuffer 轉換為 Class 類別的實例。
protected  void SignatureSpi.engineUpdate(ByteBuffer input)
          使用指定的 ByteBuffer 更新要簽章或驗證的資料。
protected  void MessageDigestSpi.engineUpdate(ByteBuffer input)
          使用指定的 ByteBuffer 更新摘要。
 void Signature.update(ByteBuffer data)
          使用指定的 ByteBuffer 更新要簽章或驗證的資料。
 void MessageDigest.update(ByteBuffer input)
          使用指定的 ByteBuffer 更新摘要。
 

javax.cryptoByteBuffer 的使用
 

參數型別為 ByteBufferjavax.crypto 中的方法
 int Cipher.doFinal(ByteBuffer input, ByteBuffer output)
          按單部分操作加密或解密資料,或者結束一個多部分操作。
protected  int CipherSpi.engineDoFinal(ByteBuffer input, ByteBuffer output)
          按單部分操作加密或解密資料,或者結束一個多部分操作。
protected  void MacSpi.engineUpdate(ByteBuffer input)
          從 input.position() 開始處,處理 ByteBuffer input 中的 input.remaining() 位元組。
protected  int CipherSpi.engineUpdate(ByteBuffer input, ByteBuffer output)
          繼續多部分加密或解密操作(取決於此 cipher 的初始化方式),以處理其他資料部分。
 void Mac.update(ByteBuffer input)
          從 input.position() 開始,處理 ByteBuffer input 中的 input.remaining() 個位元組。
 int Cipher.update(ByteBuffer input, ByteBuffer output)
          繼續多部分加密或解密操作(具體取決於此 Cipher 的初始化方式),以處理其他資料部分。
 

javax.net.sslByteBuffer 的使用
 

參數型別為 ByteBufferjavax.net.ssl 中的方法
 SSLEngineResult SSLEngine.unwrap(ByteBuffer src, ByteBuffer dst)
          嘗試把 SSL/TLS 網路資料解碼到純文本應用程序資料緩衝區中。
 SSLEngineResult SSLEngine.unwrap(ByteBuffer src, ByteBuffer[] dsts)
          嘗試把 SSL/TLS 網路資料解碼到純文本應用程序資料緩衝區序列中。
 SSLEngineResult SSLEngine.unwrap(ByteBuffer src, ByteBuffer[] dsts)
          嘗試把 SSL/TLS 網路資料解碼到純文本應用程序資料緩衝區序列中。
abstract  SSLEngineResult SSLEngine.unwrap(ByteBuffer src, ByteBuffer[] dsts, int offset, int length)
          嘗試把 SSL/TLS 網路資料解碼到純文本應用程序資料緩衝區子序列中。
abstract  SSLEngineResult SSLEngine.unwrap(ByteBuffer src, ByteBuffer[] dsts, int offset, int length)
          嘗試把 SSL/TLS 網路資料解碼到純文本應用程序資料緩衝區子序列中。
 SSLEngineResult SSLEngine.wrap(ByteBuffer[] srcs, ByteBuffer dst)
          嘗試把資料緩衝區序列中的純文本位元組編碼成 SSL/TLS 網路資料。
 SSLEngineResult SSLEngine.wrap(ByteBuffer[] srcs, ByteBuffer dst)
          嘗試把資料緩衝區序列中的純文本位元組編碼成 SSL/TLS 網路資料。
abstract  SSLEngineResult SSLEngine.wrap(ByteBuffer[] srcs, int offset, int length, ByteBuffer dst)
          嘗試把資料緩衝區字序列中的純文本位元組編碼成 SSL/TLS 網路資料。
abstract  SSLEngineResult SSLEngine.wrap(ByteBuffer[] srcs, int offset, int length, ByteBuffer dst)
          嘗試把資料緩衝區字序列中的純文本位元組編碼成 SSL/TLS 網路資料。
 SSLEngineResult SSLEngine.wrap(ByteBuffer src, ByteBuffer dst)
          試圖把緩衝區的純文本應用程序資料編碼成 SSL/TLS 網路資料。
 


JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only