一、c語言版
在c語言中stdio.h標頭檔案裡包含了檔案讀寫操作。主要是通過file*指標進行檔案操作。通過fscanf和fprintf對檔案進行格式化的讀寫,或通過fread 和 fwrite對檔案進行二進位制讀寫。(在資料量比較大時,一般建議用後者,因為格式化在輸入時需要將ascii碼轉為二進位制形式,在輸出時需要將二進位制形式轉為ascii碼,花費較大系統時間。fread 將檔案的內容直接讀入到乙個指標中,fwrite將乙個結構體的內容存放到檔案中。
size_t fread ( void * ptr, size_t size, size_t count, file * stream );
size_t fwrite ( const void * ptr, size_t size, size_t count, file * stream );
size表示針對的單個單元或結構體的大小的字元數。
count表示單元的個數。 (當然只要size*count積一定即可,可以讓size賦給count,然後count賦給size)
和c++不同之處在於:
file * fin=fopen("檔案位址「,"r」);// 需要將函式的返回值賦給乙個指標變數
fscanf(fin,"%d %d",&row,&column); // 需要注意的是需要用&,傳遞位址
fclose(fin);//是將file型指標 fin傳給fclose函式
二、c++版
#include 引入檔案操作標頭檔案
ofstream 對於輸出,ifstream對於輸入,fstream既可輸出又可以輸入。
ifstream fin;
fin.open("e://c++//filecontrol//filecontrol//debug");//呼叫成員函式
fin>>row>>column;//直接按流輸出
fin.close(); //呼叫成員函式關閉//
#include "stdafx.h"
#include //for c++ file control
#include #include //for c file control
using namespace std;
/* you can change the size to meet your needs*/
#define matrix_largest_size 500 //matrix_row * matrix_column <= matrix_largest_size
/*here you can choose use c or use c++ to realize the file control operation */
#if 1
#define c_mode
#endif
#if 0
#define cplusplus_mode
#endif
int _tmain(int argc, _tchar* argv)
} /*
we print the matrix in the console
*/ for(int i=0;i// as the filefolder seperate
*/fin=fopen("e://c++//filecontrol//filecontrol//debug","r");
fscanf(fin,"%d %d",&row,&column);
printf("row:%d/tcolumn:%d/n",row,column);
/* read all the matrix element into the matrix int array
*/ for(int i=0;i
C 檔案讀寫
原文 http www.vckbase.com document viewdoc id 1439 原作 john peregrine file i o using c 序論 我曾發表過檔案輸入輸出的文章,現在覺得有必要再寫一點。檔案 i o 在c 中比烤蛋糕簡單多了。在這篇文章裡,我會詳細解釋asc...
C 讀寫檔案
1 使用filestream讀寫檔案 檔案頭 using system using system.collections.generic using system.text using system.io 讀檔案核心 byte bydata new byte 100 char chardata ne...
檔案讀寫(C )
將原文件的資料每列的讀入各個陣列中,然後進行增加行操作,對文字文件的資料進行擴充套件,將格式化寫入另乙個文字文件中。如下 經驗證準確無誤達到所要的效果。include include using namespace std int main 存入新的文字文件 file pnfilenew pnfil...