asp.net 如何将导入字段数据转换成日期,格式要求如:2014-01-03。保证字符串有空值时,正常插入空值?
问题具体描述如下:A表:有以下几个字段用来存日期(格式如:2014-01-03)用EXCEL将数据导入后,变为2014-01-030:00:00这样的格式我想去掉后面0:...
问题具体描述如下:
A表:有以下几个字段用来存日期(格式如:2014-01-03)
用EXCEL将数据导入后,变为 2014-01-03 0:00:00 这样的格式
我想去掉后面 0:00:00 这样的时间
如果四个字段都采用以下,将日期格式设置为"yyyy-MM-dd"
string yhtjs = dr[i]["原旅业合同结束日期"].ToString();
DateTime dt1 =Convert.ToDateTime(yhtjs);
string yhtjs1 =dt1.ToString("yyyy-MM-dd");
。。。。。(其他字段设置略)
此时,数据不为空时能正常
但是如果存在 yhtjs xhtjs yjk_htjs xjk_htjs 四个字段中的内容有任何一个为空时,都会出错提示为如下:
该字符串未被识别为有效的 DateTime。
如何解决这种情况?请大侠具体帮忙指点,谢谢!(没分了55,非常抱歉) 展开
A表:有以下几个字段用来存日期(格式如:2014-01-03)
用EXCEL将数据导入后,变为 2014-01-03 0:00:00 这样的格式
我想去掉后面 0:00:00 这样的时间
如果四个字段都采用以下,将日期格式设置为"yyyy-MM-dd"
string yhtjs = dr[i]["原旅业合同结束日期"].ToString();
DateTime dt1 =Convert.ToDateTime(yhtjs);
string yhtjs1 =dt1.ToString("yyyy-MM-dd");
。。。。。(其他字段设置略)
此时,数据不为空时能正常
但是如果存在 yhtjs xhtjs yjk_htjs xjk_htjs 四个字段中的内容有任何一个为空时,都会出错提示为如下:
该字符串未被识别为有效的 DateTime。
如何解决这种情况?请大侠具体帮忙指点,谢谢!(没分了55,非常抱歉) 展开
4个回答
2014-01-03
展开全部
在导入的时候判断一下,为空的时候,处理一下不行吗?
追问
因为每个字段都存在有空内容和非空内容。所以判断为空处理,我试了还有问题。“该字符串未被识别为有效的 DateTime。”.....后面加多几个判断,非空情况下,为空情况下,分别加上判断。测试,正常!谢谢你给我的启示。
展开全部
两种方式
1.导入数据完成后,通过sql,检查一遍。将所有时间字段为null或者为''的都替换成你设置的默认时间
UPDATE 表名 SET 时间字段='默认值'
WHERE 时间字段 IS NULL OR 时间字段=''
2.通过代码
string yhtjs = dr[i]["原旅业合同结束日期"].ToString();
//用可空类型
DateTime? dt1 =Convert.ToDateTime(yhtjs);
string yhtjs1 =dt1.ToString("yyyy-MM-dd");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只要是为空的内容字段你写入默认为最小日期格式或者最大日期格式(如:1900-01-01或2999-12-31),然后这样你转DateTime就不会报错了,再根据你自己程序要求处理默认的1900-01-01,这时候默认的1900-01-01相当于空内容。希望我的回答对你有帮助,谢谢!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
导出是EXCEL单元格设置成文本格式。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询