c++用 ifstream 宣告輸入檔案物件,用 ofstream 宣告輸出檔案物件。
getline的使用:(感覺有點像孔乙己的茴香豆的 茴 的寫法了)
#include
#include
#include
using namespace std;
int main()
ifstream infile("getline.txt",ios::in | ios::binary);
char buf1_1[30];
string buf1;
char buf2[30];
///
注意這裡getline的兩種不同的函式定義,輸入緩衝乙個需要string型別()
///
另乙個需要char* 型別()
getline(cin,buf1);//istream& getline ( istream& is, string& str );
cin.getline(buf1_1,30); ///
/*
istream& getline (char* s, streamsize n );
istream& getline (char* s, streamsize n, char delim );
*/
infile.getline(buf2,30,'a');
/*
istream& getline (char* s, streamsize n );
istream& getline (char* s, streamsize n, char delim );
//delime表示遇到該字元結束,也可以不使用
*/
cout << "buf1: "<< buf1
使用ofstream簡化檔案輸出(不用使用fwrtie):
ofstream examplefile ("example.txt");
if (examplefile.is_open())
examplefile << "this is a line.\n"; //直接將該字串寫入到examplefile檔案中
examplefile << "this is another line.\n";
examplefile.close();
使用ifstream簡化檔案輸入(不用使用fread):
char buffer[256];
ifstream examplefile ("example.txt");
if (!examplefile.is_open())
cout << "error opening file";
exit (1);//include
while (!examplefile.eof() )
examplefile.getline (buffer,100);
cout << buffer << endl;
使用c++ seek:
const char * filename = "example.txt";
char * buffer;
long size;
ifstream file (filename, ios::in|ios::binary|ios::ate);
(0, ios::end); //因為上面使用了ios::ate 所以這裡不用seek end了
size = file.tellg();//tellg獲取當前讀檔案的位置,這裡也就是檔案大小
說明:
獲取或者移動檔案製作,對於tellg、seekg 來說是針對ifstream
對於tellp、seekp來說是針對ofstream
seekp 或 seekg:
ios::beg from beginning of stream
ios::cur current position in stream
ios::end from end of stream
buffer = new char [size + 1];
file.seekg(0,ios::beg);//在將檔案指標移回來以便讀入
file.read(buffer, size); //istream& read ( char* s, streamsize n );
buffer[size] = '\0';
file.close();
cout << "size: "
file_out.write(buffer,size);//這裡寫了兩次主要是為了證明
delete buffer;
附:(檔案開啟模式)
C 檔案操作與C 的檔案操作
c filestream 檔案流 主要用於使用二進位制方式讀寫檔案資料,可讀取任何檔案 建立filestream物件 e 建立filestream物件 filemode 指定系統開啟檔案的方式filestream fileaccess 指定檔案的訪問方式 read唯讀,write只寫,readwri...
C 檔案操作
c 追加檔案 sw.writeline 追逐理想 sw.writeline kzlll sw.writeline net筆記 sw.flush sw.close c 拷貝檔案 string orignfile,newfile file.copy orignfile,newfile,true c 刪除...
C 檔案操作
c 檔案操作 軒軒 發表於 2006 2 18 12 40 16 在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設的標準輸出流 cout 一般情況下就是指的顯示器...