程式演算法~ 兩資料集(Array/List) 資料差異比對合併
程式演算法 ~ 兩資料集(Array/List) 資料差異比對合併
雙迴圈01.(舊外新內) ~ 剃除/修正舊資料
for(int i=0;i<舊List.Count;i++) { bool blnfind=false; if(舊List[i].delflag=="N") { for(int j=0;j<新List.Count;j++) { if(舊List[i].Value==新List[j].Value) { 舊List[i].Quantity=新List[j].Quantity; 因數量修改所以修改DB; blnfind=true; break; } } } if(blnfind==false) { 舊List[i].delflag="N"; 因旗標修改所以修改DB; } }
雙迴圈02.(新外舊內) ~ 補上新資料
for(int i=0;i<新List.Count;i++) { bool blnfind=false; for(int j=0;j<舊List.Count;j++) { if(新List[i].Value==舊List[j].Value) { blnfind=true; break; } } if(!blnfind) { ... 舊List.Add(新List[i]); 因元素增加所以修改DB; } }