public override string ExportData(object data, ResourceType type) { string strSuccessedFile = string.Empty; string strFailedFile = string.Empty; string strWorkdir = Directory.GetCurrentDirectory(); ArrayList listViewData = (ArrayList)data; switch (type) { case ResourceType.eResourceType_Txt: strSuccessedFile = strWorkdir + "\\Data\\" + this.Name + "_" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + "_成功.txt"; strFailedFile = strWorkdir + "\\Data\\" + this.Name + "_" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + "_失败.txt"; FileStream fs = new FileStream(strSuccessedFile, FileMode.Create); StreamWriter sw = new StreamWriter(fs); FileStream fsf = new FileStream(strFailedFile, FileMode.Create); StreamWriter swf = new StreamWriter(fsf); { foreach (var oneData in listViewData) { if (((TaskGroup_GetSimilarKeywords_OneData)oneData).Successed) { sw.WriteLine(((TaskGroup_GetSimilarKeywords_OneData)oneData).ToSuccessTxt()); } else { swf.WriteLine(((TaskGroup_GetSimilarKeywords_OneData)oneData).ToFailedTxt()); } } } sw.Flush(); sw.Close(); swf.Flush(); swf.Close(); fs.Close(); fsf.Close(); break; case ResourceType.eResourceType_Csv: strSuccessedFile = strWorkdir + "\\Data\\" + this.Name + "_" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + ".csv"; var csvHelper = new CsvHelper(",", false); foreach (var oneData in listViewData) { csvHelper.AddRow(); csvHelper["关键词"] = ((TaskGroup_GetSimilarKeywords_OneData)oneData).Word; csvHelper["基础词"] = ((TaskGroup_GetSimilarKeywords_OneData)oneData).BaseKeyword; csvHelper["状态"] = ((TaskGroup_GetSimilarKeywords_OneData)oneData).Successed; csvHelper["来源"] = EnumString.GetStringValue(((TaskGroup_GetSimilarKeywords_OneData)oneData).eSource); csvHelper["百度PC指数"] = ((TaskGroup_GetSimilarKeywords_OneData)oneData).BaiduPCIndex; } File.WriteAllBytes(strSuccessedFile, csvHelper.ExportToBytes(true)); break; case ResourceType.eResourceType_MySQL: strSuccessedFile = string.Empty; // TODO: break; } this.taskGroupStatus = TaskGroupStatus.eTaskGroupStatus_Idle; if (strSuccessedFile != string.Empty) { return(Path.GetFileName(strSuccessedFile)); } return(string.Empty); }
public override string ExportData(object data, ResourceType type) { string strSuccessedFile = string.Empty; string strFailedFile = string.Empty; string strWorkdir = Directory.GetCurrentDirectory(); ArrayList listViewData = (ArrayList)data; switch (type) { case ResourceType.eResourceType_Txt: strSuccessedFile = strWorkdir + "\\Data\\" + this.Name + "_" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + "_成功.txt"; strFailedFile = strWorkdir + "\\Data\\" + this.Name + "_" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + "_失败.txt"; FileStream fs = new FileStream(strSuccessedFile, FileMode.Create); StreamWriter sw = new StreamWriter(fs); FileStream fsf = new FileStream(strFailedFile, FileMode.Create); StreamWriter swf = new StreamWriter(fsf); { foreach (var oneData in listViewData) { if (((TaskGroup_FileCheck_OneData)oneData).Successed) { sw.WriteLine(((TaskGroup_FileCheck_OneData)oneData).ToSuccessTxt()); } else { swf.WriteLine(((TaskGroup_FileCheck_OneData)oneData).ToFailedTxt()); } } } sw.Flush(); sw.Close(); swf.Flush(); swf.Close(); fs.Close(); fsf.Close(); break; case ResourceType.eResourceType_Csv: strSuccessedFile = strWorkdir + "\\Data\\" + this.Name + "_" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + ".csv"; var csvHelper = new CsvHelper(",", false); foreach (var oneData in listViewData) { csvHelper.AddRow(); csvHelper["Web路径"] = ((TaskGroup_FileCheck_OneData)oneData).url; csvHelper["Http响应"] = ((TaskGroup_FileCheck_OneData)oneData).code; csvHelper["文档类型"] = ((TaskGroup_FileCheck_OneData)oneData).contentType; csvHelper["服务器"] = ((TaskGroup_FileCheck_OneData)oneData).server; csvHelper["中间件"] = ((TaskGroup_FileCheck_OneData)oneData).powerBy; } File.WriteAllBytes(strSuccessedFile, csvHelper.ExportToBytes(true)); break; case ResourceType.eResourceType_MySQL: strSuccessedFile = string.Empty; // TODO: break; } this.taskGroupStatus = TaskGroupStatus.eTaskGroupStatus_Idle; if (strSuccessedFile != string.Empty) { return(Path.GetFileName(strSuccessedFile)); } return(string.Empty); }