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

2021-07-24 11:08:39 字數 1336 閱讀 8531

例如資料為:

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 xx[3];

double yy[3];

double zz[3];

for (int i = 0; i < 3; i++)

fclose(fp);

system("pause");

return

0;}

參考:

2.利用fgets()函式

#include

#include

#include

double char2num(char *s);

int main()

char buf[30];

char str[10];

double xx[176 * 144];

double yy[176 * 144];

double zz[176 * 144];

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

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

int number = 0;

double d = 0;

for (int n = 0; n < 25344;n++)

else

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

}printf("%s", str);

d = char2num(str);

zz[n] = d;

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

j = 0;

number = 0;

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

}fclose(fp);

for (int i = 0; i < 25344; i++)

system("pause");

return0;}

double char2num(char *s) //將字元型資料轉換成double型資料

else

else

} }

return d;

}

此方案會存在資料轉換錯誤的情況,不建議採用,方法一比較簡單。

參考:

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

123456659,24666666,45461221,46465333,123456659,24666666,45461221,46465333,123456659,24666666,45461221,46465333,例如資料如上,由於是用逗號分隔,所以要解決去掉逗號的問題。第一種方法 用fge...

java中讀取txt文字內容

public static listreadtxt string url else if strs 0 contains else if strs 0 contains for int i 1 i strs.length i else if strs 0 contains else if strs ...

vc 從txt檔案中讀取資料

數值分析課上老師說要將資料寫在txt檔案上,然後讓程式從txt檔案中讀取資料。讓本來c 已經遺忘了很久的我們無從下手,在網上也檢視了很多,發現大多都是扯淡,放在vc 編輯器上發現並不能執行,不知道是我的問題,還是程式的問題。但是洒家費了很大的力氣才從乙個撇腳的程式中總結出來,原來我們可以這樣從txt...