[問題] 比對兩個檔案
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
比對兩個檔案,將沒有重複的部分挑出。
比方說 A檔案為 11111 B檔案為 11111
22222 33333
33333 44444
44444 55555
挑出A檔案中的22222 到檔案C
B檔案中的55555 到檔案D
原本打算用大致上像下面的寫法
/****** 比對A檔案有, B檔案沒有 ******/
int bothFlag = 0;
Afp = fopen(A檔路徑,"r");
Bfp = fopen(B檔路徑,"r");
OTfp = fopen(輸出檔路徑,"w");
while(fscanf(Afp,"%s",A)!=EOF){
bothFlag = 0;
while(fscanf(Bfp,"%s",B)!=EOF){
if( strcmp(A,B) == 0 ){bothFlag = 1;break;}
}
if( bothFlag == 0 )fprintf(OTfp,"%s",A);
}
但是總是無法成功。
程式跑出來的錯誤結果:
無法比對,程式碼無法執行到第二個while迴圈中的fscanf敘述。
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
HP-UX
informix ESQL/C
補充說明:
如果有其他方法可以達到同樣效果的,還請各位先進解惑...Orz
感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.41.199.145
→
09/22 22:37, , 1F
09/22 22:37, 1F
推
09/22 22:42, , 2F
09/22 22:42, 2F
→
09/22 22:42, , 3F
09/22 22:42, 3F
→
09/22 22:43, , 4F
09/22 22:43, 4F
→
09/22 22:45, , 5F
09/22 22:45, 5F
→
09/22 22:49, , 6F
09/22 22:49, 6F
→
09/22 22:49, , 7F
09/22 22:49, 7F
→
09/22 22:59, , 8F
09/22 22:59, 8F
→
09/22 23:18, , 9F
09/22 23:18, 9F
推
09/22 23:42, , 10F
09/22 23:42, 10F
→
09/22 23:58, , 11F
09/22 23:58, 11F
→
09/23 02:12, , 12F
09/23 02:12, 12F
→
09/23 02:15, , 13F
09/23 02:15, 13F
→
09/23 02:16, , 14F
09/23 02:16, 14F
推
09/23 02:26, , 15F
09/23 02:26, 15F
→
09/23 08:47, , 16F
09/23 08:47, 16F
→
09/23 21:01, , 17F
09/23 21:01, 17F
→
09/23 21:02, , 18F
09/23 21:02, 18F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章