/// <summary> /// 对比,得出2个列表 /// </summary> public void Contrast() { listNotInFtp = new List <string>(); listNotRecord = new FtpFileStruct(); //遍历数据库 for (int row = 0; row < cAccess.basicDt.Rows.Count; row++) { bool notInFtp = true; for (int i = 0; i < FtpFS.typeList.Count; i++) { if (FtpFS.typeList[i].name == cAccess.basicDt.Rows[row]["DocType"].ToString()) { for (int j = 0; j < FtpFS.typeList[i].files.Count; j++) { int start = cAccess.basicDt.Rows[row]["LocalPath"].ToString().LastIndexOf("\\"); if (FtpFS.typeList[i].files[j].name == cAccess.basicDt.Rows[row]["LocalPath"].ToString().Substring(start + 1)) { notInFtp = false; FtpFS.typeList[i].files[j].isNotRecord = false; break; } } } } if (notInFtp) { listNotInFtp.Add(cAccess.basicDt.Rows[row]["LocalPath"].ToString()); } } for (int i = 0, k = 0; i < FtpFS.typeList.Count; i++) { for (int j = 0; j < FtpFS.typeList[i].files.Count; j++) { if (FtpFS.typeList[i].files[j].isNotRecord) { if (listNotRecord.typeList.Count == 0) { listNotRecord.typeList.Add(new type(FtpFS.typeList[i].name)); } else { if (listNotRecord.typeList[k].name == FtpFS.typeList[i].name) { listNotRecord.typeList[k].addFile(FtpFS.typeList[i].files[j].name); } else { listNotRecord.typeList.Add(new type(FtpFS.typeList[i].name)); k++; } } } } } }
/// <summary> /// 获取FTP中的文件列表 /// </summary> public void getFtpFileList() { FtpFS = new FtpFileStruct(); FtpFS.addType(fh.GetDirList()); for (int i = 0; i < FtpFS.typeList.Count; i++) { fh.GotoDirectory(cConfig.strFtpRoot + '/' + FtpFS.typeList[i].name, true); FtpFS.typeList[i].addFile(fh.GetFileList()); } }
/// <summary> /// 对比,得出2个列表 /// </summary> public void Contrast() { listNotInFtp = new List<string>(); listNotRecord = new FtpFileStruct(); //遍历数据库 for (int row = 0; row < cAccess.basicDt.Rows.Count; row++) { bool notInFtp = true; for (int i = 0; i < FtpFS.typeList.Count; i++) { if (FtpFS.typeList[i].name == cAccess.basicDt.Rows[row]["DocType"].ToString()) { for (int j = 0; j < FtpFS.typeList[i].files.Count; j++) { int start = cAccess.basicDt.Rows[row]["LocalPath"].ToString().LastIndexOf("\\"); if (FtpFS.typeList[i].files[j].name == cAccess.basicDt.Rows[row]["LocalPath"].ToString().Substring(start + 1)) { notInFtp = false; FtpFS.typeList[i].files[j].isNotRecord = false; break; } } } } if (notInFtp) { listNotInFtp.Add(cAccess.basicDt.Rows[row]["LocalPath"].ToString()); } } for (int i = 0, k = 0; i < FtpFS.typeList.Count; i++) { for (int j = 0; j < FtpFS.typeList[i].files.Count; j++) { if (FtpFS.typeList[i].files[j].isNotRecord) { if (listNotRecord.typeList.Count == 0) { listNotRecord.typeList.Add(new type(FtpFS.typeList[i].name)); } else { if (listNotRecord.typeList[k].name == FtpFS.typeList[i].name) listNotRecord.typeList[k].addFile(FtpFS.typeList[i].files[j].name); else { listNotRecord.typeList.Add(new type(FtpFS.typeList[i].name)); k++; } } } } } }