位元組流中byte[]的作用
阿新 • • 發佈:2018-12-16
/* * 位元組輸出流操作步驟: * A:建立位元組輸出流物件 * B:呼叫write()方法 * C:釋放資源 * * public void write(int b):寫一個位元組 * public void write(byte[] b):寫一個位元組陣列 * public void write(byte[] b,int off,int len):寫一個位元組陣列的一部分 */ public class FileOutputStreamDemo2 { public static void main(String[] args) throws IOException { // 建立位元組輸出流物件 // OutputStream os = new FileOutputStream("fos2.txt"); // 多型 FileOutputStream fos = new FileOutputStream("fos2.txt"); // 呼叫write()方法 //fos.write(97); //97 -- 底層二進位制資料 -- 通過記事本開啟 -- 找97對應的字元值 -- a // fos.write(57); // fos.write(55); //public void write(byte[] b):寫一個位元組陣列 byte[] bys={97,98,99,100,101}; fos.write(bys); //public void write(byte[] b,int off,int len):寫一個位元組陣列的一部分 fos.write(bys,1,3); //釋放資源 fos.close(); } }
byte[]在位元組流中的作用1
作為容器,通過fos.write(byte)寫入資料,如寫入整形,會在輸出時轉換成對應的位元組 97-->a 48-->0 65-->A
/* * 一次讀取一個位元組陣列:int read(byte[] b) * 返回值其實是實際讀取的位元組個數。 */ public class FileInputStreamDemo2 { public static void main(String[] args) throws IOException { // 建立位元組輸入流物件 // FileInputStream fis = new FileInputStream("fis2.txt"); FileInputStream fis = new FileInputStream("FileOutputStreamDemo.java"); byte[] bys = new byte[1024]; int len = 0; while ((len = fis.read(bys)) != -1) { System.out.print(new String(bys, 0, len)); } // 釋放資源 fis.close(); } }