/// <summary> /// 存储数据到CSV文件的函数。 /// </summary> /// <param name="fileName">CSV文件名</param> /// <param name="myRecordString">具体的数据</param> public static void RecordCsv(string fileName, params string[] myRecordString) { List <string[]> myRecordStringList = new List <string[]>(); myRecordStringList.Add(myRecordString); DocumentApplication.WriteCsv(fileName, true, myRecordStringList); }
/// <summary> /// 从数据库中读取历史交易日信息 /// </summary> /// <returns>返回是否读取成功</returns> private bool getDaysFromDataBase() { tradeDaysOfDataBase = new List <int>(); //从数据库的表sh510050中读取交易日信息 using (SqlConnection conn = new SqlConnection(GetconnectionString())) { conn.Open(); //打开数据库 // Console.WriteLine("数据库打开成功!"); //创建数据库命令 SqlCommand cmd = conn.CreateCommand(); //创建查询语句 cmd.CommandText = "SELECT distinct(Date) FROM [OptionTick].[dbo].[sh510050] where Date>=20150209 order by Date"; try { SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { tradeDaysOfDataBase.Add(reader.GetInt32(reader.GetOrdinal("Date"))); } } catch (Exception myError) { System.Console.WriteLine(myError.Message); } finally { conn.Close(); conn.Dispose(); } } //若成功读入交易日信息,将交易日信息存到本地文件 if (tradeDaysOfDataBase.Count > 0) { if (TradeDayOf2016 == null) { getDaysFrom2016(); } foreach (var item in TradeDayOf2016) { if (item > tradeDaysOfDataBase[tradeDaysOfDataBase.Count - 1]) { tradeDaysOfDataBase.Add(item); } } List <string[]> ls = new List <string[]>(); foreach (var item in tradeDaysOfDataBase) { string[] ls0 = { item.ToString() }; ls.Add(ls0); } DocumentApplication.WriteCsv(filePathName, ls); } //成功读取交易日信息返回true,否者返回false if (tradeDaysOfDataBase.Count > 0) { return(true); } else { return(false); } }