[問題] dev c++ 讀檔
有一個TXT檔 其內容如下
1.00000000000000000E7 -9.14852320345776700E-1 + j2.23140527362037000E-1
2.00000000000000000E7 -7.56271102407572200E-1 + j3.30259949195833790E-1
3.00000000000000000E7 -6.20325924486876090E-1 + j3.46203836609537240E-1
4.00000000000000000E7 -5.27297456754841940E-1 + j3.25494094509534550E-1
5.00000000000000000E7 -4.66616425370004070E-1 + j2.95901262414049970E-1
6.00000000000000000E7 -4.26563640373938120E-1 + j2.67206077303872560E-1
7.00000000000000000E7 -3.99336712989733920E-1 + j2.42070720408910220E-1
8.00000000000000000E7 -3.80219298254262390E-1 + j2.20771782436070390E-1
9.00000000000000000E7 -3.66379976307903870E-1 + j2.02890408973486820E-1
1.00000000000000000E8 -3.56083762341616210E-1 + j1.87875563241802460E-1
1.10000000000000010E8 -3.48236777382851410E-1 + j1.75217261677709700E-1
1.20000000000000000E8 -3.42128594488190800E-1 + j1.64488161571316540E-1
1.30000000000000000E8 -3.37284601517914420E-1 + j1.55342820616875430E-1
1.39999999999999990E8 -3.33379373006832490E-1 + j1.47505361417419790E-1
1.50000000000000000E8 -3.30184449774590490E-1 + j1.40755799763452430E-1
1.60000000000000010E8 -3.27535996871048150E-1 + j1.34918103616574700E-1
1.70000000000000000E8 -3.25314249260481160E-1 + j1.29850571113963830E-1
我的寫法如下
FILE *fps11;
double x11,y11,z11;
int time11 =0;
char filename[60];
printf("please input s11 data filename= ");
scanf("%s",filename);
if((fps11 =fopen(filename, "r"))==NULL)
{
printf("no file can open \n");
}
else
{
while(fscanf(fps11,"%lf%lf%lf",&x11,&y11,&z11) ==3)
{
s11[time11][0].rpart= y11;
s11[time11][0].ipart= z11;
t11[time11].rpart= x11;
t11[time11].ipart=0.0;
}
}
fclose(fps11);
遭遇問題:
(1)因為用空白分行,所以如果有未知空白 檔案就讀取不全
(2)讀取完後,不想有j的出現
所以每次要用檔案的時候,都要先把數據修整過才能使用
請問 要怎麼改才能直接讀取所需資料
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.64.185.241
→
01/11 18:40, , 1F
01/11 18:40, 1F
→
01/11 19:17, , 2F
01/11 19:17, 2F
→
01/11 19:23, , 3F
01/11 19:23, 3F
→
01/11 20:08, , 4F
01/11 20:08, 4F
推
01/12 21:52, , 5F
01/12 21:52, 5F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章