public class FileTest { // 創建類
public static void main(String[] args) {
File file = new File("word.txt");
try {
FileOutputStream out = new FileOutputStream(file);
byte buy[] = "我有一只小毛驢,我從來也不騎。".getBytes();
out.write(buy);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
try {
FileInputStream in = new FileInputStream(file);
byte byt[] = new byte[1024]; //1024是什麼意思
int len = in.read(byt);
System.out.println("文件中的信息是:" + new String(byt, 0, len)); //這裡的0是什麼意思
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
byte byt[] = new byte[1024]; //1024是什麼意思
這裡的1024是一個數字,表示這個byte數組的長度。
首先糾正一下:關於數組定義時的寫法
// C語言經常這麼些,java兼容這個寫法。
byte byt[] = new byte[1024];
// 推薦這麼寫,你看main方法就知道String[] args 而不是 String args[]
byte[] byt = new byte[1024];
byte byt[] = new byte[1024]; 那麼這裡這個是什麼意思呢?
第一點:計算機中只認識兩個數字,0 和 1. 因為電器特性決定的,就是電壓有或者沒有。電流在傳輸過程中有損耗,
所以不能用電壓幾伏就表示幾。
第二點:因為只有0,或者1,所以 把存放0,或者1這種最小單元格稱為位,就是bit。為什麼叫位呢?
可能像座位一樣,要麼有人坐,要麼沒人坐。
第三點:將8個這樣的位放一起,我們叫byte(也叫字節,兩個byte就是字符)。
將1024個這樣的byte放一起,就是k,所以為什麼是1024呢?因為剛好1k,有時候你會發現有512的。就是0.5K
這個東西在內存中大概就長這樣子: