JavaIO流按流的方向分爲:輸入流和輸出流。 按流的數據單位不同分爲:字節流和字符流。
計算機存儲信息的基本單位是字節,字符是計算機中使用的數字和符號。1個漢字字符存儲需要2個字節,1個英文字符存儲需要1個字節。字符流與字節流的轉換使用轉換流。
應用場景處理文本數據,優先考慮使用字符流。 音頻視頻文件和字符沒有關係使用字節流。import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class FileIO {
public void fileWrite() throws Exception {
// FileOutputStream輸出字節流寫數據
File file = new File("D:/a.txt");
FileOutputStream fileOutputStream = new FileOutputStream(file);
String data = "hello";
byte[] buffer = data.getBytes();
fileOutputStream.write(buffer, 0, 5);
fileOutputStream.close();
}
public void fileReader() throws Exception {
// FileOutputStream輸出字節流寫數據
File file = new File("D:/a.txt");
FileOutputStream fileOutputStream = new FileOutputStream(file);
String data = "hello";
byte[] buffer = data.getBytes();
fileOutputStream.write(buffer, 0, 5);
fileOutputStream.close();
}
public void copyImg() throws Exception {
// 圖片拷貝
File inFile = new File("D:/a.jpg");
File ouFile = new File("D:/b.jpg");
FileOutputStream fileOutputStream = new FileOutputStream(ouFile);
FileInputStream fileInputStream = new FileInputStream(inFile);
byte[] buffer = new byte[1024];
int length = 0;
while ((length = fileInputStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, length);
}
fileOutputStream.close();
fileInputStream.close();
}
}