1、file類----------------------------->作用:與外界建立聯絡
2個常量:路徑分隔符 file.pathseparator(;分號) 檔案分隔符 file.separator ( windows(\)其他作業系統(/))
1)、路徑的表示形式
b)、string path ="e":+file.separator+"xp"+file.separator+"test"+file.separator+"2.jpg";(優點:跨平台)
c)、string path ="e:/xp/test/2.jpg";(推薦使用)
2)、相對路徑與絕對路徑與外界建立聯絡
a)、相對路徑
string parentpath ="e:/xp/test/「;(父類目錄)
string name = 」2.jpg「;(建立檔名)
第一種:file src = new file(parentpath,name);(直接讓檔案在目錄下有聯絡);
第二種:file src = new file(new file(parentpath),name);(先讓父類檔案建立聯絡,再讓檔案在目錄下有聯絡);
b)、絕對路徑
c)、沒有碟符、以user.dir構建
2、io流的基本操作
1、建立聯絡
file src = new file();
2、選擇流
3、操作
輸出流建議養成.flush的習慣
4、釋放資源
流.close
3、io流的分類
一、節點流(分為位元組流、字元流)
概念:離資料來源最近的流
a)、位元組流:可以處理一切格式
a、1)、輸入流 inputsteam 、fileinputsteam 、bytearrayinputsteam
操作 read(位元組陣列)
建立中間容器 byte[ ] flush = new byte[長度];
定義接受長度 int len = 0;
迴圈讀取 while(-1!=(len=流.read(flush)))
操作 輸出或者拷貝
a、2)、輸出流 outputsteam 、fileoutputsteam 、bytearrayoutputsteam
操作 write(位元組陣列,0,長度) 輸出
b、1)、輸入流 reader 、filereader 、bytearrayreader
操作 read(字元陣列)
建立中間容器 char[ ] flush = new char[長度];
定義接受長度 int len = 0;
迴圈讀取 while(-1!=(len=流.read(flush)))
操作 輸出或者拷貝
b、2)、輸出流 writer 、filewriter 、bytearraywriter
操作 write(字元陣列,0,長度)
二、處理流(分為轉換流、緩衝流、處理資料型別流、列印流等高階流)
作用:裝飾模式、提高效能、增強功能
a)、轉換流:解碼與編碼字符集問題的處理
1)、輸入流 inputsteamreader ——>解碼
2)、輸出流 outputsteamwriter ——>編碼
b)、緩衝流:提高效能 建議所有流都加上緩衝流提高效能
1)、輸入流 bufferedinputsteam bufferedreader
2)、輸出流 bufferedoutputsteam bufferedwriter
c)、處理資料型別流
1)、基本資料型別+string:必須存在才能讀取 讀取順序要與寫出順序一致
1、a)、輸入流 datainputsteam ——>新增方法 read資料型別
1、b)、輸出流 dataoutputsteam ——>新增方法 write資料型別
2)、引用型別
2、a)、反序列化 objectinputsteam ——>新增方法 readobject
2、b)、序列化 objecroutputsteam ——>新增方法 writeobject
4、列印流:printsteam()
5、system.in(鍵盤輸入) system.out(列印標準輸出(控制台)資訊) system.err(列印錯誤輸出資訊)
setin setout seterr(重定向,用來輸出到日誌)
注意:以下io流有新增方法不能使用多型:
1 bytearrayoutputsteam——>新增方法.tobytearray() 2 bufferedreader——>新增方法.readline
3 bufferedwrite——>新增方法.newline 4 datainputsteam ——>新增方法 read資料型別 dataoutputsteam ——>新增方法 write資料型別
5 objectinputsteam ——>新增方法 readobject objecroutputsteam ——>新增方法 writeobject 6 printsteam
IO流的一些常見流物件操作
1 列印流 printwriter 列印流printwriter 構造引數可以接受的型別 file物件 file 字串路徑 string 位元組輸出流 ouputstream 字元輸出流 writer public class printwriterdemo01 流關閉 bufferedreader...
關於標準IO流的一些認識
c語言庫中有乙個file的結構體,當我們開啟乙個檔案的時候,會用到file 型別的指標來操作fopen所返回的乙個指標,這個指標就是流。流是作業系統管理io的乙個引入的概念,乙個流是與乙個描述符繫結在一起的。所以也可以根據流來得到乙個描述符。標準io庫有三種型別的緩衝 1 全緩衝2 行緩衝3 無緩衝...
IO流筆記一
流 資料流 把資料理解為河流從兩個終端進行互動 i o 1.input 輸入流 客戶端從伺服器讀取資料 也就是客戶端接收資料 讀取資料 2.output 輸出流 客戶端向伺服器傳送資料 也就是伺服器接收資料 寫入資料 作用 主要用於伺服器和客戶端的互動 劃分1.方向 1 輸入 應用程式從伺服器讀取資...