順序檔案:乙個有限字元構成的順序字元流
檔案流類:用於檔案操作
使用用/建立檔案的基本流程
讀寫檔案
關閉檔案
#include
ofstream outfile
("clients.dat"
, ios::out | ios::binary);
//ofstream時fstream中定義的類
//outfile時自定義的ofstream類的物件
是將要建立的檔案的檔名
//ios::*** 開啟並建立檔案的選項
ofstream fout;
fout.
open
("test.out"
, ios::out | ios::binary)
;//第二種建立順序檔案的方法:先建立ofstream物件,再用open函式開啟
開啟選項
檔名:
判斷開啟是否成功
if
(!fout)
讀/寫指標用於標識檔案操作的當前位置, 該指標在**,讀寫操作就在**進行 。
//寫指標
ofstream fout
("a1.out"
;long location = fout.
tellp()
;//取得寫指標的位置
location =
10l;
// 可為負值。10l是因為location是乙個long型變數
fout.
seekp
(location)
;// 將寫指標移動到第10個位元組處。seek postion
fout.
seekp
(location, ios::beg)
;// 從頭數location。
fout.
seekp
(location, ios::cur)
;// 從當前位置數location
fout.
seekp
(location, ios::end)
;// 從尾部數location
//讀指標
ifstream fin
(「a1.in」,ios::in)
;long location = fin.
tellg()
;//取得讀指標的位置
location =
10l;
fin.
seekg
(location)
;//將讀指標移動到第10個字
fin.
seekg
(location, ios::beg)
;//從頭數location
fin.
seekg
(location, ios::cur)
;//從當前位置數location
fin.
seekg
(location, ios::end)
;//從尾部數location
二進位制檔案讀寫是直接讀寫二進位制資料,如果直接拿記事本來看,結果未必正確。
int x=10;
fout.
seekp(20
, ios::beg)
;//從beginning開始的20個位元組開始寫起
fout.
write((
const
char*)
(&x)
,sizeof
(int))
;//寫入x
fin.
seekg(0
, ios::beg)
;fin.
read((
char*)
(&x)
,sizeof
(int))
;
二進位制檔案寫入#include
#include
#include
using
namespace std;
class
cstudent
;int
main()
outfile.
close()
;return0;
}
note:
二進位制檔案讀出
#include
#include
#include
using
namespace std;
class
cstudent
;int
main()
while
(infile.
read((
char*)
&s,sizeof
(s))
) infile.
close()
;return0;
}
二進位制檔案讀寫#include
#include
#include
using
namespace std;
class
cstudent
;int
main()
iofile.
seekp(2
*sizeof
(s),ios::beg)
; iofile.
write
("mike"
,strlen
("mike")+
1); iofile.
seekg(0
,ios::beg)
;while
(infile.
read((
char*)
&s,sizeof
(s))
) iofile.
close()
;return0;
}
檔案拷貝示例程式#include
#include
using
namespace std;
//用法示例:
//mycopy src.dat dest.dat
//如果dest.dat原來就有,則被覆蓋
intmain
(int argc,
char
*ar**)
//命令列引數的使用
ifstream infile
(ar**[1]
, ios::binary | ios::in)
;//開啟檔案用於讀取if(
!infile)
ofstream outfile
(ar**[2]
, ios::binary | ios::out);if
(!outfile)
char c;
while
(infile.
get(c)
) outfile.
close()
; infile.
close()
;return0;
}
C 檔案操作 提取 處理檔案中資料
在a.txt 檔案中格式為 名字 工資 將 工資提取出來,進行 4操作 再放到檔案中。string strlines file.readalllines d viang desktop a.txt encoding.default 讀取檔案的每一行 for int i 0 i strlines.le...
C 檔案操作與C 的檔案操作
c filestream 檔案流 主要用於使用二進位制方式讀寫檔案資料,可讀取任何檔案 建立filestream物件 e 建立filestream物件 filemode 指定系統開啟檔案的方式filestream fileaccess 指定檔案的訪問方式 read唯讀,write只寫,readwri...
C 檔案的處理
乙個檔案是乙個儲存在磁碟中帶有指定名稱和目錄路徑的資料集合。當開啟檔案進行讀寫時,它變成乙個流。從根本上說,流是通過通訊路徑傳遞的位元組序列。有兩個主要的流 輸入流和輸出流。輸入流用於從檔案讀取資料 讀操作 輸出流用於向檔案寫入資料 寫操作 system.io 命名空間中的filestream類有助...