ps:今天記錄一下關於io操作的東西,以前總是在複製別人的**,前天終於有時間好好研究一下。研究下來,其實覺得還是蠻充實的,就覺得終於懂的差不多了,以前總覺得查查網上就行了,反正是很簡單的**。不過,我想正因為簡單,越簡單的**越要懂得越全越多才好。
一、檔案流的讀。
using (filestream stream = new filestream(@"d:\2.txt", filemode.open))//using塊結束後自動調釋放方法,列舉值open為開啟(流要讀就要開啟),
二、檔案流的寫
filestream stream = new filestream(@"d:\21.txt", filemode.create);//流要寫,就要create 乙個文件,或是開啟乙個文件追加內容
byte array = encoding.default.getbytes(textbox1.text);
for (int i = 0; i < array.length; i++)
stream.write(array, 0, array.length);//流的寫入
stream.dispose();//釋放方法
三、copy
filestream stream1 = new filestream(@"d:\21.txt", filemode.open);
filestream stream2 = new filestream(@"d:\21.txt", filemode.create);
byte array = new byte[1024 * 1024];
int length = 0;
dowhile (length== array.length);//實際讀取大小和設定讀取大小一致時,才能迴圈
stream1.dispose();
stream2.dispose();
四、實際應用:檔案截斷
如例三的**,只要通過檔案的大小,時間就可以計算出要截斷的位置,然後再來要定取截斷位置的位元組流多少。
五、實際應用:檔案加密
把我們得到檔案的位元組流,進行一定的處理,再寫成另乙個檔案,就很容易進行最簡單手法,也是最困難解密的方法。
注意點:
1、filestream是檔案流,建立了之後就一定要關閉。
2、檔案流可以通過位元組流截斷檔案,也可以用於加密檔案,但是除了可以被txt處理的檔案外,其他的檔案如果轉成string是不行的。
檔案流的操作
streamreader實現了抽象基類textreader類,而streamwriter實現了抽象基類textwriter。分別用於對流的讀取與寫入。先從streamreader說起 一 構造方法 streamreader stream 為指定的流初始化 streamreader 類的新例項。str...
檔案操作(流)
開啟流 fi le fopen const char filename,const char mode 第乙個引數 檔名 第二個引數 方式 關閉流 r代表read的簡寫,代表可讀可寫,w代表write,b代表bit二進位制位,t代表text r 開啟唯讀檔案,該檔案必須存在 r 開啟可讀可寫的檔案,...
STL 檔案操作 流檔案操作
在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設的標準輸出流 cout 一般情況下就是指的顯示器,所以,cout write stdout n 就表示把字串 wr...