博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c# winform项目用到的部分知识点总结
阅读量:5977 次
发布时间:2019-06-20

本文共 5687 字,大约阅读时间需要 18 分钟。

项目用到的知识点总结,欢迎大家吐槽:

///         /// 转换非yyyy-MM-dd的字符串为DateTime类型        /// 
public static void ConvertDateFormat() {            string orginStr = "test-test-20130607.xls";            string dateStr = orginStr.Split('-')[2].Split('.')[0];            Console.WriteLine(dateStr);            Console.WriteLine(DateTime.ParseExact(dateStr, "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture).ToString("yyyy-M-d"));        }

相关资料:

 

 

///         /// get the days of currDate minus lastDate;The result is negative is allowed         ///         ///         ///         /// 
private int minusTwoDate(string lastDateStr,string currDateStr) { DateTime lastDate = Convert.ToDateTime(lastDateStr); DateTime currDate = Convert.ToDateTime(currDateStr); return (currDate - lastDate).Days; }

 

///        /// judage whether cross the month;cross:true;       ///        /// the last page recorded       ///        /// 
private bool whetherCrossMonth(string lastDateStr, string currDateStr) { DateTime lastDate = Convert.ToDateTime(lastDateStr); DateTime currDate = Convert.ToDateTime(currDateStr); if (currDate.Month == lastDate.Month)//the same month { return false; } else { return true; } }

///         /// is last day:true;is not last day:false and return last date of month        ///         ///         /// the last day of month or null        /// 
is last day:true;or false
private bool wetherIsLastDay(string lastDateStr,out string lastDayOfMonth) { DateTime lastPageDate = Convert.ToDateTime(lastDateStr); //first day of month string lastDay = string.Empty; DateTime lastDateOfMonth = Convert.ToDateTime(lastPageDate.Year + "-" + lastPageDate.Month + "-" + DateTime.DaysInMonth(lastPageDate.Year, lastPageDate.Month)); if ((lastDateOfMonth-lastPageDate).Days>0) { lastDayOfMonth =lastDateOfMonth.ToShortDateString();; return false; }// less than The last day of each month else { lastDayOfMonth = lastDay; return true; }// }

sqlite方面:

//sql。如果businessDate字段不格式化为yyyy-MM-dd,则在max()对此字段取值会//出现2013-1-9大于2013-1-10、2013-1-20的情况sqlList.Add(String.Format("insert into test(businessName,businessDate,indb_datetime) values('{0}','{1}','{2}')", EventOrderKeyStr, fileDate.ToString("yyyy-MM-dd"), DateTime.Now.ToString()));//入库环节 DBHelperSqlite dhSqlite = new DBHelperSqlite(); dhSqlite.ExecuteSqlTran(sqlList);

 

dbhelper:

private string dbName = "cmcc2.db";        private string connectionString = "Data Source=cmcc2.db;Pooling=true;FailIfMissing=false";        ///         /// if the db is not exists,create it and create the table        ///         public DBHelperSqlite()        {            string SQLCreateStr = "CREATE TABLE [cmcc_businesses_info] (businessName nvarchar(50),businessDate nvarchar(10),indb_datetime nvarchar(20))";            #region CASE2            FileInfo fi = new FileInfo(dbName);            if (fi.Exists == false)            {                logger.InfoFormat("db不存在");                //Console.WriteLine("db不存在");                SQLiteConnection.CreateFile(dbName);                logger.InfoFormat("db创建完成");                using (SQLiteConnection conn = new SQLiteConnection(connectionString))                {                    conn.Open();                    using (SQLiteCommand cmd = new SQLiteCommand(SQLCreateStr, conn))                    {                        if (cmd.ExecuteNonQuery() > 0)                        {                            logger.InfoFormat("表创建成功");                            //Console.WriteLine("表创建成功");                        }                    }                }            }            #endregion        }//ctor        ///         /// 执行多条SQL语句,实现数据库事务。        ///         /// 多条SQL语句                public void ExecuteSqlTran(IList
SQLStringList) { using (SQLiteConnection conn = new SQLiteConnection(connectionString)) { conn.Open(); SQLiteCommand cmd = new SQLiteCommand(); cmd.Connection = conn; SQLiteTransaction tran = conn.BeginTransaction(); cmd.Transaction = tran; try { for (int n = 0; n < SQLStringList.Count; n++) { string strsql = SQLStringList[n].ToString(); if (strsql.Trim().Length > 1) { logger.Debug(strsql); cmd.CommandText = strsql; cmd.ExecuteNonQuery(); } } tran.Commit(); } catch (System.Data.SQLite.SQLiteException ex) { logger.Error(ex); tran.Rollback(); //throw new Exception(ex.Message); } } }//trans
SubString函数使用时一个隐藏的“雷”:
///         /// str.Substring(startIndex,length)如果length大于str的长度,就会报错        ///         public static void SubstringTest2()        {            string str = "4.333";            string[] r = str.Split('.');            if (r.Length == 2)            {                if (r[1].Length > 4)                {                    r[1] = r[1].Substring(0, 4);                }                Console.WriteLine(r[0] + "." + r[1]);            }        }

转载地址:http://bwsox.baihongyu.com/

你可能感兴趣的文章
jsrender简单使用
查看>>
window mysql-bin 转化为可读模式
查看>>
redis 安装及php扩展编译安装
查看>>
MPAndroidChart---饼状图PieChart
查看>>
PHP中基于b2core框架内部的网页上Html输出生成Word的处理
查看>>
采用Servlet Listener方式运行Liquibase
查看>>
TCP-IP 学习(三) TCP
查看>>
对比两个无序整形数组相似度问题算法
查看>>
批量有效地修改package名
查看>>
android或ios app请求参数格式
查看>>
Camera Vision - video surveillance on C#
查看>>
如何理解网络连接中的"3次握手"?
查看>>
使用Dubbo服务出现java.io.IOException: invalid constant type: 18异常解决办法
查看>>
PYKit目录
查看>>
JSON使用总结
查看>>
php-redis中文帮助手册_系统相关_config_eval_evalSha_script...
查看>>
Tomcat Context配置
查看>>
CentOS6.5安装ntopng
查看>>
mysql事务rollback&commit
查看>>
Node.js搭建Web服务器
查看>>