[TOC]
## IO 輸入輸出流
```
字節(1 byte = 8 bit)
字符(2 byte = 16 bit)
```
>### 字符流
*(主要讀取文本相關內容。`txt,doxc`)*
**FileReader(字符輸入流)**
- 方法
```
read() 一次讀一個數據,當read返回值為-1表示沒有數據。(int類型)
read(字符數組, 偏移量, 讀取字符長度)
```
**FileWriter (字符輸入流)**
- 對象實例化
```
FileWriter fw = new FileWriter(File||文件地址)
FileWriter fw = new FileWriter(File||文件地址,true) //true防止刷新覆蓋
```
- 方法
```
write(String str) 向文中寫字符串
flush() 刷新,將內存中的數據寫入到文件,這種方式會覆蓋原有內容。
close()關閉流。close 在關閉時先刷新,再關閉。
```
*****
>### 字節流
*(什么都能讀)*
**FileInputStream (字節輸入流)**
**FileOutputStream (字節輸出流)**
```
public void FileOutputStreamTest(InputStream inputStream){
FileOutputStream fos = null;
File file = new File("targerSrc");
if(file.exists()){
fos = new FileOutputStream(file)
byte buffer = new byte[1024];
while((byteSize = inputstream.read(buffer)) != -1){
fos.write(buffer,0,byteSize)
}
fos.close();
}
}
```
*****
>### 緩沖流
1. **緩沖字符流**
```
BufferedReader 緩沖字符輸入流
BufferedWriter 緩沖字符輸出流
```
2. **緩沖字節流**
```
BufferedInputStream 緩沖字節輸入流
BufferedOutputStream 緩沖字節輸出流
```
***BufferedReader 緩沖字符輸入流***
- 方法
```
readLine()一次讀一行數據
```
* [ ] 關閉流原則,先打開后關閉
*****
- 第一章 java SE
- 1.1數據類型
- 1.2 流程控制語句
- 1.3 方法
- 1.4 面向對象三特性
- 1.5 對象數組與集合
- 1.6 數組和集合操作工具類
- 1.7 可變參數
- 1.8 String
- 1.9 StringBuilder
- 1.10 final&&finally&&finalize
- 1.11 抽象類與接口
- 1.12 基本數據類型的包裝類
- 1.13 泛型
- 1.14 內部類
- 1.15 throw & throws & try catch
- 1.16 線程
- 1.17 BeanUtils
- 1.18 java反射
- 1.19 序列化和反序列化
- 1.20 IO輸入輸出流
- 1.21 File
- 1.22 RandomAccessFile
- 1.23 第三方工具CommonsIO
- 1.24 java網絡傳輸
- 第二章 java EE
- 2.1 maven的配置
- 2.2 Cookie
- 2.3 EL表達式 JSTL
- 2.4 驗證相關
- 2.4.1 驗證碼
- 2.5 防重復提交
- 2.6 activeMq的使用
- 2.7 jtl的使用
- 2.8 Upload上傳文件
- 第三章 Spring相關
- 3.1 IOC/DI
- bean的生命周期
- bean的配置
- 3.2 Spring Aop
- 3.3 Spring Jdbc
- 3.4 事物相關
- 事物
- 事物的使用
- 3.5 MBG使用
- 第四章 解決問題方法
- 4.1 List轉換為Map
- 4.2 結果返回類
- 4.3 HSSF的使用
- 第五章 排序
- 5.1 冒泡排序
- 5.2 選擇排序
- 5.3 快速排序