asp.net C#时间/日期格式

我们要用到:

datetime.tostring的方法(string, iformatprovider)    

using system;  

using system.globalization;

 

string format="d";  

datetime date=datatime,now;  

response.write(date.tostring(format, datetimeformatinfo.invariantinfo));

结果输出  thursday, june 16, 2005

 

参数format格式详细用法:

格式字符             关联属性/说明  

d                          shortdatepattern  

d                        longdatepattern  

f                          完整日期和时间(长日期和短时间)  

f                         fulldatetimepattern(长日期和长时间)  

g                          常规(短日期和短时间)  

g                         常规(短日期和长时间)  

m、m                  monthdaypattern  

r、r                    fc1123pattern  

s                          使用当地时间的 sortabledatetimepattern(基于 iso 8601)  

t                          shorttimepattern  

t                         longtimepattern  

u                          universalsortabledatetimepattern 用于显示通用时间的格式  

u                         使用通用时间的完整日期和时间(长日期和长时间)  

y、y                    yearmonthpattern    

 

下表列出了可被合并以构造自定义模式的模式。

这些模式是区分大小写的;例如,识别“mm”,但不识别“mm”。

如果自定义模式包含空白字符或用单引号括起来的字符,

则输出字符串页也将包含这些字符.

未定义为格式模式的一部分或未定义为格式字符的字符按其原义复制。

 

格式模式      说明

d                   月中的某一天。一位数的日期没有前导零。  

dd                 月中的某一天。一位数的日期有一个前导零。  

ddd               周中某天的缩写名称,在 abbreviateddaynames 中定义。  

dddd             周中某天的完整名称,在 daynames 中定义。  

m                 月份数字。一位数的月份没有前导零。  

mm              月份数字。一位数的月份有一个前导零。  

mmm           月份的缩写名称,在 abbreviatedmonthnames 中定义。  

mmmm        月份的完整名称,在 monthnames 中定义。  

y                   不包含纪元的年份。如果不包含纪元的年份小于 10,则显示不具有前导零的年份。  

yy                 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示具有前导零的年份。  

yyyy             包括纪元的四位数的年份。  

gg                 时期或纪元。如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该模式。  

h                   12 小时制的小时。一位数的小时数没有前导零。  

hh                 12 小时制的小时。一位数的小时数有前导零。  

h                  24 小时制的小时。一位数的小时数没有前导零。  

hh                      24 小时制的小时。一位数的小时数有前导零。  

m                  分钟。一位数的分钟数没有前导零。  

mm               分钟。一位数的分钟数有一个前导零。  

s                   秒。一位数的秒数没有前导零。  

ss                  秒。一位数的秒数有一个前导零。  

f                   秒的小数精度为一位。其余数字被截断。  

ff                  秒的小数精度为两位。其余数字被截断。  

fff                 秒的小数精度为三位。其余数字被截断。  

ffff                      秒的小数精度为四位。其余数字被截断。  

fffff              秒的小数精度为五位。其余数字被截断。  

ffffff             秒的小数精度为六位。其余数字被截断。  

fffffff            秒的小数精度为七位。其余数字被截断。  

t                   在 amdesignator 或 pmdesignator 中定义的 am/pm 指示项的第一个字符(如果存在)。  

tt                  在 amdesignator 或 pmdesignator 中定义的 am/pm 指示项(如果存在)。  z                     时区偏移量(“+”或“-”后面仅跟小时)。一位数的小时数没有前导零。例如,太平洋标准时间是“-8”。  

zz                 时区偏移量(“+”或“-”后面仅跟小时)。一位数的小时数有前导零。例如,太平洋标准时间是“-08”。  

zzz               完整时区偏移量(“+”或“-”后面跟有小时和分钟)。一位数的小时数和分钟数有前导零。例如,太平洋标准时间是“-08:00”。  

:                   在 timeseparator 中定义的默认时间分隔符。  

/                   在 dateseparator 中定义的默认日期分隔符。  

% c               其中 c 是格式模式(如果单独使用)。如果格式模式与原义字符或其他格式模式合并,则可以省略“%”字符。  

c                 其中 c 是任意字符。照原义显示字符。若要显示反斜杠字符,请使用“”。

 

 只有上面第二个表中列出的格式模式才能用于创建自定义模式;

在第一个表中列出的标准格式字符不能用于创建自定义模式。

自定义模式的长度至少为两个字符;

例如,datetime.tostring("d") 返回 datetime 值;

“d”是标准短日期模式。

datetime.tostring( "%d") 返回月中的某天;

“%d”是自定义模式.

datetime.tostring( "d ") 返回后面跟有一个空白字符的月中的某天;

“d”是自定义模式。    

比较方便的是,上面的参数可以随意组合,并且不会出错,多试试,肯定会找到你要的时间格式如要得到2005年06月 这样格式的时间

可以这样写: date.tostring("yyyy年mm月", datetimeformatinfo.invariantinfo)如此类推

datetime dt = datetime.now;
label1.text = dt.tostring();//2005-11-5 13:21:25
label2.text = dt.tofiletime().tostring();//127756416859912816
label3.text = dt.tofiletimeutc().tostring();//127756704859912816
label4.text = dt.tolocaltime().tostring();//2005-11-5 21:21:25
label5.text = dt.tolongdatestring().tostring();//2005年11月5日
label6.text = dt.tolongtimestring().tostring();//13:21:25
label7.text = dt.tooadate().tostring();//38661.5565508218
label8.text = dt.toshortdatestring().tostring();//2005-11-5
label9.text = dt.toshorttimestring().tostring();//13:21
label10.text = dt.touniversaltime().tostring();//2005-11-5 5:21:25
?2005-11-5 13:30:28.4412864
label1.text = dt.year.tostring();//2005
label2.text = dt.date.tostring();//2005-11-5 0:00:00
label3.text = dt.dayofweek.tostring();//saturday
label4.text = dt.dayofyear.tostring();//309
label5.text = dt.hour.tostring();//13
label6.text = dt.millisecond.tostring();//441
label7.text = dt.minute.tostring();//30
label8.text = dt.month.tostring();//11
label9.text = dt.second.tostring();//28
label10.text = dt.ticks.tostring();//632667942284412864
label11.text = dt.timeofday.tostring();//13:30:28.4412864
label1.text = dt.tostring();//2005-11-5 13:47:04
label2.text = dt.addyears(1).tostring();//2006-11-5 13:47:04
label3.text = dt.adddays(1.1).tostring();//2005-11-6 16:11:04
label4.text = dt.addhours(1.1).tostring();//2005-11-5 14:53:04
label5.text = dt.addmilliseconds(1.1).tostring();//2005-11-5 13:47:04
label6.text = dt.addmonths(1).tostring();//2005-12-5 13:47:04
label7.text = dt.addseconds(1.1).tostring();//2005-11-5 13:47:05
label8.text = dt.addminutes(1.1).tostring();//2005-11-5 13:48:10
label9.text = dt.addticks(1000).tostring();//2005-11-5 13:47:04
label10.text = dt.compareto(dt).tostring();//0
//label11.text = dt.add(?).tostring();//问号为一个时间段
label1.text = dt.equals("2005-11-6 16:11:04").tostring();//false
label2.text = dt.equals(dt).tostring();//true
label3.text = dt.gethashcode().tostring();//1474088234
label4.text = dt.gettype().tostring();//system.datetime
label5.text = dt.gettypecode().tostring();//datetime
label1.text = dt.getdatetimeformats('s')[0].tostring();//2005-11-05t14:06:25
label2.text = dt.getdatetimeformats('t')[0].tostring();//14:06
label3.text = dt.getdatetimeformats('y')[0].tostring();//2005年11月
label4.text = dt.getdatetimeformats('d')[0].tostring();//2005年11月5日
label5.text = dt.getdatetimeformats('d')[1].tostring();//2005 11 05
label6.text = dt.getdatetimeformats('d')[2].tostring();//星期六 2005 11 05
label7.text = dt.getdatetimeformats('d')[3].tostring();//星期六 2005年11月5日
label8.text = dt.getdatetimeformats('m')[0].tostring();//11月5日
label9.text = dt.getdatetimeformats('f')[0].tostring();//2005年11月5日 14:06
label10.text = dt.getdatetimeformats('g')[0].tostring();//2005-11-5 14:06
label11.text = dt.getdatetimeformats('r')[0].tostring();//sat, 05 nov 2005 14:06:25 gmt
label1.text =? string.format("{0:d}",dt);//2005-11-5
label2.text =? string.format("{0:d}",dt);//2005年11月5日
label3.text =? string.format("{0:f}",dt);//2005年11月5日 14:23
label4.text =? string.format("{0:f}",dt);//2005年11月5日 14:23:23
label5.text =? string.format("{0:g}",dt);//2005-11-5 14:23
label6.text =? string.format("{0:g}",dt);//2005-11-5 14:23:23
label7.text =? string.format("{0:m}",dt);//11月5日
label8.text =? string.format("{0:r}",dt);//sat, 05 nov 2005 14:23:23 gmt
label9.text =? string.format("{0:s}",dt);//2005-11-05t14:23:23
label10.text = string.format("{0:t}",dt);//14:23
label11.text = string.format("{0:t}",dt);//14:23:23
label12.text = string.format("{0:u}",dt);//2005-11-05 14:23:23z
label13.text = string.format("{0:u}",dt);//2005年11月5日 6:23:23
label14.text = string.format("{0:y}",dt);//2005年11月
label15.text = string.format("",dt);//2005-11-5 14:23:23?
label16.text = string.format("{0:yyyymmddhhmmssffff}",dt); //yyyymm等可以设置,比如label16.text = string.format("{0:yyyymmdd}",dt);

 

时间: 2024-10-30 06:19:25

asp.net C#时间/日期格式的相关文章

.Net与JS时间日期格式的转换问题对比分析_实用技巧

本文实例分析了.Net与JS时间日期格式的转换问题.分享给大家供大家参考,具体如下: Js中的1415349957524整数 ,其实代表的是1970.1.1 00:00:00至现今某个时间点的时间间隔毫秒数.而在.Net中,我们可以用Ticks属性得到0001.1.1 00:00:00至现今某个时间点的时间间隔毫秒数. 具体代码实现如下所示: JS: //获取1970.1.1 00:00:00至现在的毫秒数 var milDate = +(new Date); .Net: //获取1970.1.

浅析GridView中显示时间日期格式的问题_实用技巧

以下都是GridView基本常用的日期,时间格式 形式 语法 结果 注释 数字 {0:N2} 12.36   数字 {0:N0} 13   货币 {0:c2} $12.36   货币 {0:c4} $12.3656   货币 "¥{0:N2}" ¥12.36   科学计数法 {0:E3} 1.23E+001   百分数 {0:P} 12.25% P and p present the same. 日期 {0:D} 2006年11月25日   日期 {0:d} 2006-11-25  

时间格式-asp.net C# 时间输入格式验证 仅仅利用前台实现 可能么

问题描述 asp.net C# 时间输入格式验证 仅仅利用前台实现 可能么 ErrorMessage="注意格式:年-月-日,如:2014-07-04" ControlToValidate="TextBox25" CssClass="styleyz" ValidationExpression="/^(d{2}|d{4})-1((0([1-9]{1}))|(1[1|2]))-1(([0-2]([1-9]{1}))|(3[0|1]))$/&

weblogic jndi数据源 时间日期格式

问题描述 weblogic jndi数据源 时间日期格式 web项目配置了jndi数据源数据库里时间为2014-01-01 而查处来之后为2014-01-01 00:00:00.0 求各位大神怎么解决

js和C# 时间日期格式转换的简单实例_javascript技巧

下午在搞MVC和EXTJS的日期格式互相转换遇到了问题,我们从.NET服务器端序列化一个DateTime对象的结果是一个字符串格式,如 '/Date(1335258540000)/' 这样的字串. 整数1335258540000实际上是一个1970 年 1 月 1 日 00:00:00至这个DateTime中间间隔的毫秒数.通过javascript用eval函数可以把这个日期字符串转换为一个带有时区的Date对象,如下 用var date = eval('new ' + eval('/Date(

WordPress常用的时间日期格式函数使用方法

在使用WordPress过程中,经常需要对WordPress的时间日期进行格式化,在PHP中格式或日期的函数是date(),但在WordPress中使用the_time()函数来格式化WordPress时间日期,说到底他们的用法基本上都差不多的,不过the_time()是直接输出,而date()函数是返回时间字符串. 参数说明 参数 参数描述 输出时间格式 d 日期 06 j 日期 6 D 星期 一 F 月份 一月 g 小时 6 G 小时 06 h 分钟 6 H 分钟 06 a 上下午 am/p

asp.net 计算时间日期间隔实现代码

先来看个最简单的计算时间差的.net代码  代码如下 复制代码 DateTime dt1 = new DateTime(2005,5,6,15,36,05);    DateTime dt2 = new DateTime(2005,6,13,11,32,05);    System.TimeSpan st = dt2.sSubtract(dt1);    this.TextBox1.Text = st.Days.ToString()+"天"     +st.Hours.ToString

Win7的IIS7中ASP获得的系统日期格式为斜杠的解决办法_应用技巧

我们可以通过更改注册表来解决这个问题: 打开注册表,进入到[HKEY_USERS\.DEFAULT\Control Panel\International],然后 1.将键 sDate 的值由 / 改为 - 2.将键 sShortDate 的值由 yyyy/M/d 改为 yyyy-M-d 3.重启IIS即可.

Android开发时间日期格式国际化实现方法

DateFormat helps you to format and parse dates for any locale. Your code can be completely independent of the locale conventions for months, days of the week, or even the calendar format: lunar vs. solar. To format a date for the current Locale, use