lz还是没懂。 The DateTime value type represents dates and times with values ranging from 00:00:00 (midnight), January 1, 0001 Anno Domini (Common Era) through 11:59:59 P.M., December 31, 9999 A.D. (C.E.) in the Gregorian calendar. Time values are measured in 100-nanosecond units called ticks, and a particular date is the number of ticks since 12:00 midnight, January 1, 0001 A.D. (C.E.) in the GregorianCalendar calendar (excluding ticks that would be added by leap seconds). For example, a ticks value of 31241376000000000L represents the date, Friday, January 01, 0100 12:00:00 midnight. A DateTime value is always expressed in the context of an explicit or default calendar.以上来自msdn.DateTime内部使用一个Long类型的Tick保存自12:00 midnight, January 1, 0001 A.D. (C.E.)的秒数。因此和你说的带日期不带日期,带星期不带星期没有任何关系。 日期和星期是ToString转换成字符串才有的。你在VS 调试时看到的也是ToString的结果。 DateTime.Now就是DateTime类型,因此不需要转换。需要显示给用户是需要转换成字符串,使用ToString().如果格式不满足要求,使用自定义格式ToString("yyyy-MM-dd HH:mm:ss")。 这样明白了吗?
格式化成字符串用.ToString("yyyy-MM-dd HH:mm:ss");好了。还有DateTime.Now就是DateTime类型,不需要再Convert.ToDateTime了。
后台获取到日期后,首先要拼串 例如得到的是2013-5-14 需要加上开始时间,变成2013-5-14 00:00:00
然后需要把字符串类型转换成时间类型,用了Convent.toDatetime,转换后的格式带有星期,
带有日期的原因是因为本机时间设置的问题,本机设置时间的格式带有了星期,所以一经转换成时间类型,就会带有星期,我问的是,在不改变本机时间设置的情况下,有什么解决办法来满足我的需求
但是我最后要的是时间类型的数据,用到时间类型的时候在用Convert.DateTime转换下
但是我最后要的是时间类型的数据,用到时间类型的时候在用Convert.DateTime转换下 嗯,转换了,但是因为本机设置的是带星期的格式,只要我用Convert.DateTime转换就带日期
因为本机设置的日期带星期,所以DateTime.Now的时候带有日期,就算我先转换成string格式一下,当转会DateTime类型时,还是带有日期
The DateTime value type represents dates and times with values ranging from 00:00:00 (midnight), January 1, 0001 Anno Domini (Common Era) through 11:59:59 P.M., December 31, 9999 A.D. (C.E.) in the Gregorian calendar.
Time values are measured in 100-nanosecond units called ticks, and a particular date is the number of ticks since 12:00 midnight, January 1, 0001 A.D. (C.E.) in the GregorianCalendar calendar (excluding ticks that would be added by leap seconds). For example, a ticks value of 31241376000000000L represents the date, Friday, January 01, 0100 12:00:00 midnight. A DateTime value is always expressed in the context of an explicit or default calendar.以上来自msdn.DateTime内部使用一个Long类型的Tick保存自12:00 midnight, January 1, 0001 A.D. (C.E.)的秒数。因此和你说的带日期不带日期,带星期不带星期没有任何关系。
日期和星期是ToString转换成字符串才有的。你在VS 调试时看到的也是ToString的结果。
DateTime.Now就是DateTime类型,因此不需要转换。需要显示给用户是需要转换成字符串,使用ToString().如果格式不满足要求,使用自定义格式ToString("yyyy-MM-dd HH:mm:ss")。
这样明白了吗?
string _date=DateTime.Now.ToString("yyyy年MM月dd日 ")+ _week[(int)DateTime.Now.DayOfWeek] +DateTime.Now.ToString(" HH:mm");
DateTime dt = DateTime.ParseExact(str, "yyyy-MM-dd HH:mm:ss",null );
这是我12楼的回答。DateTime你可以把它看做是一个Long类型,ToString()的时候计算什么年啊,月啊,日期啊什么的。
Response.Write( _data +"<br/>");
Response.Write(DateTime.ParseExact(_data, "yyyy-MM-dd dddd HH:mm:ss", null).ToString("yyyy-MM-dd HH:mm:ss"));
Response.End();
这样得到的是string类型吧,
你在VS debug是看到的是ToString()的结果。
嗯,是可以保存的,但是用于查询access查询的时候就报错了
你在VS debug是看到的是ToString()的结果”的问题啊,看清楚我问的是什么问题好不好...
嗯,是可以保存的,但是用于查询access查询的时候就报错了看你是怎么用了
在Access
#
#2013-5-14# 可以明确的表示这是一个时间字符
http://wenku.baidu.com/view/6c5800a1284ac850ad02429a.htmlDateDiff("d",#2004-01-06#,#2004-01-07#)
http://zhidao.baidu.com/question/110143024.html
首先说用字符串转成时间:
string aaa="2013-5-15 00:00:00";
DateTime bbb = DateTime.Parse(aaa);
你调试截图来看看。
我也不想在转换啊,但是在access数据库里,因为那个字段是datetime类型的,所以,最终的结果要求是datetime类型啊
OK 想问下你的VS什么版?WIN系统是什么?办法肯定有,或许笨办法能解决。
对啊那我的回答也没错啊,DateTime类型没有星期,只有ToString()后才有星期。你在Debugger中看到的是ToString()后的结果。没错啊???
对啊那我的回答也没错啊,DateTime类型没有星期,只有ToString()后才有星期。你在Debugger中看到的是ToString()后的结果。没错啊???
我没说你错啊,我是说你说的是理论,不是我要的结果啊
OK 想问下你的VS什么版?WIN系统是什么?办法肯定有,或许笨办法能解决。vs2012 win7啊,我已经把本机的日期改成不带星期的了,就不报错了
我还是晕的,你改了系统时间格式,难道部署的时候还要改服务器系统时间格式?到底是怎么出的错啊?
需要字符串用
ToString(“自定义格式”)
需要解析字符串用
DateTime.ParseExact(sourceString, "自定义格式", NULL)应该不需要改系统时间的啊。
string date="";
foreach (Match m in Regex.Matches(dateString, @"[^(\u4e00-\u9fa5)]+"))
{
date += m.Value;
}
Console.WriteLine(DateTime.Parse(date));
1.假设你软件发布给其它机器,再遇到不愿改本机的又固执的那就有麻烦了;
2.我和你同意VS2012和WIN7改为带星期就没发现你那样带星期的.
因此,我想再请你借图一次,这次请把日期单独,时间单独,也就是把日期和时间分开.
string aaa="2013-5-15"; DateTime bbb = DateTime.Parse(aaa);
别纠结星期不星期的了,说了你也搞不懂,去看看Datediff函数的说明吧,用Datediff函数去处理。
private bool 带星期日期比较() { return (DateTime .Parse ("2013-5-15")>DateTime .Now) ? true :false ; }
。这些措施前提就是不改变系统日期所能采取的应对。本想找看有无提供和日期设置格式无关的函数,很显然没这样动力,只能待他人看看了。
其实,WIN7长时间格式可选有星期的,短时间格式没星期可选,想不到霸王硬上弓给上了,实属添足。
DateTime dt = DateTime.Now;
string date = dt.Year.ToString() + dt.Month.ToString() + dt.Day.ToString() + dt.Hour.ToSting() + ....;//一直加到你想要的字符串
然后再转换为日期格式就OK了