private string SqlStringConcat(CTASPWordDefine DataUnit) { return(string.Format("({0},{1},{2},{3},{3},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20,{21},{22},{23},{24},{25},{26},{27},{28},{29},{30},{31},{32},{33},{34},{35},{36},{37},{38},{39},{40},{41},{42},{43},{44},{45},{46},{47},{48},{49},{50},{51},{52})" DataUnit.IFCD, DataUnit.TDATE, DataUnit.TTIME, DataUnit.UPDATEMILLISEC, DataUnit.CP, DataUnit.CHG, DataUnit.CHGPCT, DataUnit.CQ, DataUnit.OC, DataUnit.S5, DataUnit.S4, DataUnit.S3, DataUnit.S2, DataUnit.S1, DataUnit.B1, DataUnit.B2, DataUnit.B3, DataUnit.B4, DataUnit.B5, DataUnit.SV5, DataUnit.SV4, DataUnit.SV3, DataUnit.SV2, DataUnit.SV1, DataUnit.BV1, DataUnit.BV2, DataUnit.BV3, DataUnit.BV4, DataUnit.BV5, DataUnit.BS , DataUnit.BSRATIO, DataUnit.PRECLOSEPRC, DataUnit.OPENPRC, DataUnit.HP, DataUnit.LP, DataUnit.CLOSEPRC, DataUnit.UPPERLMTPRC, DataUnit.LOWERLMTPRC, DataUnit.TQ, DataUnit.TM, DataUnit.PREOPNINTRST, DataUnit.OPNINTRST, DataUnit.PRESTLMTPRC, DataUnit.STLMTPRC, DataUnit.PREDELTA, DataUnit.DELTA , DataUnit.SETTLEGROUPID, DataUnit.SETTLEID, DataUnit.IFLXID, DataUnit.IFLXNAME, DataUnit.UNIX, DataUnit.MATKET)); }
private void DataProcessFunc(FileInfo file, string fName, string dirName) { FileStream fs = file.Open(FileMode.Open, FileAccess.Read); StreamReader sr = new StreamReader(fs, Encoding.UTF8); string tableName = "CTA_" + fName.Substring(0, 4 + dirName.Count()).ToUpper() + "_TBL"; Console.WriteLine("Table Name is: " + tableName); TableProcess(tableName, this.dbName); Console.WriteLine("--------"); Console.WriteLine("开始导入该文件的数据:" + file.FullName); Console.WriteLine("--------"); List <string> querys = new List <string>(); string line = null; int count = 0; string query = InitSqlString(tableName); while ((line = sr.ReadLine()) != null) { line = line.Replace("None", "null"); string[] tmpList = line.Split(','); if (tmpList.Length != 53) { continue; } CTASPWordDefine DataUnit = new CTASPWordDefine(); DataUnit.IFCD = tmpList[0]; DataUnit.TDATE = tmpList[1]; DataUnit.TTIME = tmpList[2]; DataUnit.UPDATEMILLISEC = tmpList[3]; DataUnit.CP = tmpList[4]; DataUnit.CHG = tmpList[5]; DataUnit.CHGPCT = tmpList[6]; DataUnit.CQ = tmpList[7]; DataUnit.OC = tmpList[8]; DataUnit.S5 = tmpList[9]; DataUnit.S4 = tmpList[10]; DataUnit.S3 = tmpList[11]; DataUnit.S2 = tmpList[12]; DataUnit.S1 = tmpList[13]; DataUnit.B1 = tmpList[14]; DataUnit.B2 = tmpList[15]; DataUnit.B3 = tmpList[16]; DataUnit.B4 = tmpList[17]; DataUnit.B5 = tmpList[18]; DataUnit.SV5 = tmpList[19]; DataUnit.SV4 = tmpList[20]; DataUnit.SV3 = tmpList[21]; DataUnit.SV2 = tmpList[22]; DataUnit.SV1 = tmpList[23]; DataUnit.BV1 = tmpList[24]; DataUnit.BV2 = tmpList[25]; DataUnit.BV3 = tmpList[26]; DataUnit.BV4 = tmpList[27]; DataUnit.BV5 = tmpList[28]; DataUnit.BS = tmpList[29]; DataUnit.BSRATIO = tmpList[30]; DataUnit.PRECLOSEPRC = tmpList[31]; DataUnit.OPENPRC = tmpList[32]; DataUnit.HP = tmpList[33]; DataUnit.LP = tmpList[34]; DataUnit.CLOSEPRC = tmpList[35]; DataUnit.UPPERLMTPRC = tmpList[36]; DataUnit.LOWERLMTPRC = tmpList[37]; DataUnit.TQ = tmpList[38]; DataUnit.TM = tmpList[39]; DataUnit.PREOPNINTRST = tmpList[40]; DataUnit.OPNINTRST = tmpList[41]; DataUnit.PRESTLMTPRC = tmpList[42]; DataUnit.STLMTPRC = tmpList[43]; DataUnit.PREDELTA = tmpList[44]; DataUnit.DELTA = tmpList[45]; DataUnit.SETTLEGROUPID = tmpList[46]; DataUnit.SETTLEID = tmpList[47]; DataUnit.IFLXID = tmpList[48]; DataUnit.IFLXNAME = tmpList[49]; DataUnit.UNIX = tmpList[50]; DataUnit.MATKET = tmpList[51]; if (++count >= 200) { query += SqlStringConcat(DataUnit); querys.Add(query); query = InitSqlString(tableName); count = 0; } else { query += SqlStringConcat(DataUnit) + ","; } } if (count != 0) { query = query.TrimEnd(','); querys.Add(query); } BatchInsert_MySql bm = new BatchInsert_MySql(this.connStr); bm.ExecuteSqlTran(querys); Console.WriteLine("-------------"); Console.WriteLine("导入完成:" + file.FullName); Log.AppendAllLines(this.fileFinishRecordPath, new string[4] { "-----------------------------------", "Time: " + DateTime.Now.ToString(), "导入完成:" + file.FullName, "-----------------------------------" }); ++numFilesFinish; Console.WriteLine("导入进度:" + ((double)numFilesFinish / (double)numAllFiles) * 100 + "%"); Console.WriteLine("-------------"); }