C語言從檔案中讀取多行用逗號分隔資料的解決方案

2021-06-24 11:13:50 字數 832 閱讀 9570

123456659,24666666,45461221,46465333,

123456659,24666666,45461221,46465333,

123456659,24666666,45461221,46465333,

例如資料如上,由於是用逗號分隔,所以要解決去掉逗號的問題。

第一種方法:用fgets函式從檔案中讀取資料,fgets讀取資料時以回車或者eof結束,讀取一行後儲存在陣列中,然後判斷是否為逗號,採取相應處理。

#include

#include

int main()

char buf[46];

char str[13];

memset(str,0,sizeof(str));

memset(buf,0,sizeof(buf));

while(!feof(fp))

else if(buf[i]==',')

}memset(buf,0,sizeof(buf));

}fclose(fp);

return 0;

}第二種方法:利用fscanf的格式可以用正規表示式來實現,思路簡單

#include

int main()

char str[11];

char ch;

int i=0,count=0;

fscanf(fp,"%[^,]%*c",str);

printf("%10s/n",str);

while(!feof(fp))

fclose(fp);

system("pause");

return 0;

}

C語言從txt文字中讀取多行用逗號分隔的資料

例如資料為 0.5712,0.45356,0.74399 0.58775,0.4721,0.77793 0.51964,0.42228,0.69693 將每一列的資料儲存在乙個double型陣列中。解決方案 1.利用fscanf 函式 include include int main double ...

C 從磁碟中讀取檔案

讀取txt檔案 讀取的資料比較小的時候 如果你要讀取的檔案內容不是很多,可以使用 file.readalltext filepath 或指定編碼方式 file.readalltext filepath,encoding 的方法。它們都一次性將文字內容全部讀完,並返回乙個包含全部文字內容的字串 用st...

WIndows下 C 從檔案中讀取資料

背景 windows下利用c 從檔案中讀寫內容 1 使用fscanf語句 include include std file fp fp fopen filepath.c str r if fp std mapnonamemap fscanf fp,s,s,s a,b,c printf s s s n...