全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2965
推到 Plurk!
推到 Facebook!

有關檔案存取fopen fscanf fprintf...

尚未結案
smilebye
一般會員


發表:21
回覆:33
積分:10
註冊:2004-01-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-02-20 17:51:33 IP:218.166.xxx.xxx 未訂閱
大家好:   
char Space = ' ';
   char Enter = '\n';
   FILE *out;
   float vector[3][5];  //我有一個二維陣列存放浮點數數字       out = fopen("D:\\samplevector.dat", "w");  //先開檔
   for(int index=0;index<3;index++)           //資料有三筆 大小三列五行
   {
      for(int i=0;i<5;i++)
         fprintf(out,"%f %c",vector[index][i],Space);  //將陣列寫出,每個數字以空白作間隔
      fprintf(out,"%c",Enter); //每筆資料都換一行寫
   }
   fclose(out);  //結束關檔 
如下: 請問現在反過來我要怎麼把這些數字取出,存回array[3][5]? 謝謝各位~(看書寫存檔,但不清楚怎麼讀) 我是新手,程式設計的菜鳥>< 嗚~請多幫忙唷! 發表人 -
------
我是新手,程式設計的菜鳥>< 嗚~請多幫忙唷!
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-02-21 09:20:55 IP:61.66.xxx.xxx 未訂閱
smilebye你好,請參考下面的Code    
 
    FILE *fp;
    float array[3][5];        ZeroMemory(array,sizeof(array));
    fp = fopen("C:\\aaa.txt","r");
    for ( int i = 0; i < 3; i   )
    {
        for ( int j = 0; j < 5; j   )
        {
            fscanf(fp, "%f", &array[i][j]);
        }
    }
    fclose(fp);
smilebye
一般會員


發表:21
回覆:33
積分:10
註冊:2004-01-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-02-21 11:31:23 IP:220.135.xxx.xxx 未訂閱
blk5743 你好:試了你的程式碼..可以了!非常謝謝~ 我還有問題的是 ~ fscanf讀取資料是如何? 不會把空白字元跟換行給讀進去阿? 大家好: 我是程式設計的菜鳥~很多不懂之處,還請大家幫忙唷^^ ~謝謝你~
------
我是新手,程式設計的菜鳥>< 嗚~請多幫忙唷!
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-02-21 13:25:41 IP:61.66.xxx.xxx 未訂閱
fscanf(fp, "%f", &array[i][j]); %f的話,會讀入浮點數 %c的話,會讀入所有字元 %d的話,會讀入整數 %s的話,會讀入字串 也就是你printf怎麼用,fscanf就怎麼用
smilebye
一般會員


發表:21
回覆:33
積分:10
註冊:2004-01-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-02-21 13:30:38 IP:220.135.xxx.xxx 未訂閱
非常謝謝你 大家好: 我是程式設計的菜鳥~很多不懂之處,還請大家幫忙唷^^ ~謝謝你~
------
我是新手,程式設計的菜鳥>< 嗚~請多幫忙唷!
系統時間:2024-11-22 16:50:20
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!