java.io.ByteArrayInputStream.read()方法讀取此輸入流的下一個位元組。read()方法都不會鎖住。
以下是java.io.ByteArrayInputStream.read()方法的宣告:
public int read()
NA
返回值位元組為整數的範圍為0-255。如果流已經達到了它的結束返回-1。
NA
下面的範例演示java.io.ByteArrayInputStream.read()方法的用法。
package com.yiibai; import java.io.ByteArrayInputStream; import java.io.IOException; public class ByteArrayInputStreamDemo { public static void main(String[] args) throws IOException { byte[] buf = {65, 66, 67, 68, 69}; ByteArrayInputStream bais = null; try{ // create new byte array input stream bais = new ByteArrayInputStream(buf); int b =0; // read till the end of the stream while((b = bais.read())!=-1) { // convert byte to character char c = (char)b; // print System.out.println("byte :"+b+"; char : "+ c); } System.out.print(bais.read()+" Reached the end"); }catch(Exception e){ // if I/O error occurs e.printStackTrace(); }finally{ if(bais!=null) bais.close(); } } }
讓我們來編譯和執行上面的程式,這將產生以下結果:
byte :65; char : A byte :66; char : B byte :67; char : C byte :68; char : D byte :69; char : E -1 Reached the end