C
货币
ToString(C)
¥
D
十进制数
ToString(D)
E
科学型
ToString(E)
E+
F
固定点
ToString(F)
G
常规
ToString(G)
N
数字
ToString(N)
X
十六进制
ToString(X)
FF
formatCode 是可选的格式化代码字符串(详细内容请搜索格式化字符串查看)
必须用{和}将格式与其他字符分开如果恰好在格式中也要使用大括号可以用连续的两个大括号表示一个大括号即 {{或者}}
常用格式举例
() int i=;
thistextBoxText=iToString();
//结果 (this指当前对象或叫当前类的实例)
thistextBoxText=iToString(d);
//结果
() int i=;
double j=;
string s=stringFormat(the value is {:d}i);
string s=stringFormat(the value is {:f}j);
thistextBoxText=s ;
//结果 the value is
thistextBoxText=s;
//结果 the value is
()double i=;
thistextBoxText=iToString(f); //结果
thistextBoxText=iToString(f);
//结果
()double i=;
thistextBoxText=iToString(n); //结果
thistextBoxText=iToString(n); //结果
()double i=;
string s=stringFormat(the value is {:p}i);
thistextBoxText=iToString(p); //结果 %
thistextBoxText=s; //结果 the value is %
() DateTime dt =new DateTime();
thistextBoxText=dtToString(yyMd);
//结果
thistextBoxText=dtToString(yyyy年M月);
//结果 年月
ConvertToDateTime(// ::)ToString(yyyy/MM/dd HH:mm:ss)
// ::
() int i=;
double j=;
string s=stringFormat(i:{}j:{}ij);
//表示左对齐占位
thistextBoxText=s ;
//结果i: j:
DateTimeToString()用法详解
我们经常会遇到对时间进行转换达到不同的显示效果默认格式为: ::
如果要换成成或更多的格式该怎么办呢?
这里将要用到:DateTimeToString的方法(String IFormatProvider)
示例
using System;
using SystemGlobalization;
String format=D;
DateTime date=DataTimeNow;
ResponseWrite(dateToString(format DateTimeFormatInfoInvariantInfo));
结果输出
Thursday June
在这里列出了参数format格式详细用法
=======================
格式字符 关联属性/说明
d ShortDatePattern
D LongDatePattern
f 完整日期和时间(长日期和短时间)
F FullDateTimePattern(长日期和长时间)
g 常规(短日期和短时间)
G 常规(短日期和长时间)
mM MonthDayPattern
rR RFCPattern
s 使用当地时间的 SortableDateTimePattern(基于 ISO )
t ShortTimePattern
T LongTimePattern
u UniversalSortableDateTimePattern 用于显示通用时间的格式
U 使用通用时间的完整日期和时间(长日期和长时间)
yY YearmonthPattern
下表列出了可被合并以构造自定义模式的模式
========================================
这些模式是区分大小写的例如识别MM但不识别mm如果自定义模式包含空白字符或用单引号括起来的字符则输出字符串页也将包含这些字符未定义为格式模式的一部分或未定义为格式字符的字符按其原义复制
格式模式 说明
d 月中的某一天一位数的日期没有前导零
dd 月中的某一天一位数的日期有一个前导零
ddd 周中某天的缩写名称在 AbbreviatedDayNames 中定义
dddd 周中某天的完整名称在 DayNames 中定义
M 月份数字一位数的月份没有前导零
MM 月份数字一位数的月份有一个前导零
MMM 月份的缩写名称在 AbbreviatedMonthNames 中定义
MMMM 月份的完整名称在 MonthNames 中定义
y 不包含纪元的年份如果不包含纪元的年份小于 则显示不具有前导零的年份
yy 不包含纪元的年份如果不包含纪元的年份小于 则显示具有前导零的年份
yyyy 包括纪元的四位数的年份
gg 时期或纪元如果要设置格式的日期不具有关联的时期或纪元字符串则忽略该模式
h 小时制的小时一位数的小时数没有前导零
hh 小时制的小时一位数的小时数有前导零
H 小时制的小时一位数的小时数没有前导零
HH 小时制的小时一位数的小时数有前导零
m 分钟一位数的分钟数没有前导零
mm 分钟一位数的分钟数有一个前导零
s 秒一位数的秒数没有前导零
ss 秒一位数的秒数有一个前导零
f 秒的小数精度为一位其余数字被截断
ff 秒的小数精度为两位其余数字被截断
fff 秒的小数精度为三位其余数字被截断
ffff 秒的小数精度为四位其余数字被截断
fffff 秒的小数精度为五位其余数字被截断
ffffff 秒的小数精度为六位其余数字被截断
fffffff 秒的小数精度为七位其余数字被截断
t 在 AMDesignator 或 PMDesignator 中定义的 AM/PM 指示项的第一个字符(如果存在)
tt 在 AMDesignator 或 PMDesignator 中定义的 AM/PM 指示项(如果存在)
z 时区偏移量(+或后面仅跟小时)一位数的小时数没有前导零例如太平洋标准时间是
zz 时区偏移量(+或后面仅跟小时)一位数的小时数有前导零例如太平洋标准时间是
zzz 完整时区偏移量(+或后面跟有小时和分钟)一位数的小时数和分钟数有前导零例如太平洋标准时间是:
: 在 TimeSeparator 中定义的默认时间分隔符
/ 在 DateSeparator 中定义的默认日期分隔符
% c 其中 c 是格式模式(如果单独使用)如果格式模式与原义字符或其他格式模式合并则可以省略%字符
\ c 其中 c 是任意字符照原义显示字符若要显示反斜槓字符请使用\\
只有上面第二个表中列出的格式模式才能用于创建自定义模式在第一个表中列出的标准格式字符不能用于创建自定义模式自定义模式的长度至少为两个字符例如
DateTimeToString( d) 返回 DateTime 值d是标准短日期模式
DateTimeToString( %d) 返回月中的某天%d是自定义模式
DateTimeToString( d ) 返回后面跟有一个空白字符的月中的某天d是自定义模式
比较方便的是上面的参数可以随意组合并且不会出错多试试肯定会找到你要的时间格式
如要得到年月 这样格式的时间
可以这样写:
dateToString(yyyy年MM月 DateTimeFormatInfoInvariantInfo)
如此类推
下面列出一些中具体的日期格式化用法
============================================
绑定时格式化日期方法:
数据控件如DataGrid/DataList等的件格式化日期方法:
eItemCell[]Text = ConvertToDateTime(eItemCell[]Text)ToShortDateString();
用String类转换日期显示格式:
StringFormat( yyyyMMdd yourDateTime);
用Convert方法转换日期显示格式:
ConvertToDateTime()ToString
(yyMMddSystemGlobalizationDateTimeFormatInfoInvariantInfo); //支持繁体数据库
直接用ToString方法转换日期显示格式:
DateTimeNowToString(yyyyMMddhhmmss);
DateTimeNowToString(yyyy/MM/dd hh:mm:ss)
只显示年月
DataBinderEval(ContainerDataItemstarttime{:yyyyM})
显示时间所有部分包括年月日时分秒
DataFormatString={:yyyyMMdd HH:mm:ss}>
用DateTimeToString(string format)输出不同格式的日期
DateTimeToString()函数有四个重载一般用得多的就是不带参数的那个了殊不知DateTimeToString(string format)功能更强大能输出不同格式的日期以下把一些情况罗列出来供大家参考有些在MSDN上有的就没有列出来了
y代表年份注意是小写的y大写的Y并不代表年份
M表示月份
d表示日期注意D并不代表什么
h或H表示小时h用的是小时制H用的是小时制
m表示分钟
s表示秒注意S并不代表什么
格式
输出
示例
年
y
string yy = DateTimeNowToString(yMM)
yy=
yy
string yy = DateTimeNowToString(yyMM)
yy=
yyy或更多的y
string yy = DateTimeNowToString(yyyy);
yy=
月
M
string mon = DateTimeParse()ToString(yyyyM)
mon =
MM
string mon = DateTimeParse()ToString(MM)
mon =
MMM
如果是中文版的操作系统则会输出五月
如果是英文操作系统则输入月份前三个字母的简写May
string mon = DateTimeParse()ToString(MMM)
英文版操作系统Jul
中文版操作系统七月
MMMM或更多的M
如果是中文版的操作系统则会输出五月
如果是英文操作系统则输入月份的全写
string mon = DateTimeParse()ToString(MMM)
英文版操作系统July
中文版操作系统七月
日期或星期
d
string dd= DateTimeParse()ToString(d)
dd=
dd
string dd= DateTimeParse()ToString(dd)
dd=
ddd
如果是中文版的操作系统则会输出星期如星期三
如果是英文操作系统则输出星期的简写如
Wed
string dd = DateTimeParse()ToString(ddd)
英文版操作系统Wed
中文版操作系统星期三
dddd或更多的d
如果是中文版的操作系统则会输出星期如星期三
如果是英文操作系统则输出星期如
Wednesday
string dd = DateTimeParse()ToString(dddd)
英文版操作系统Wednesday
中文版操作系统星期三
小时
h
小时范围
string hh = DateTimeNowToString(h);
hh =
hh或更多的h
小时范围
string hh = DateTimeNowToString(hh);
hh =
H
小时范围
string hh = DateTimeNowToString(yyyyH);
hh =
HH或更多的H
小时范围
string hh = DateTimeNowToString(yyyyHH);
hh =
string hh = DateTimePare( ::)ToString(yyyyHH);
hh =
分钟
m
string mm = DateTimeNowToString(yyyyMMddm);
mm = ;
mm或更多的m
string mm = DateTimeNowToString(yyyyMMddmm);
mm = ;
秒
s
string mm = DateTimeNowToString(yyyyMMdds);
mm = ;
ss或更多的s
string mm = DateTimeNowToString(yyyyMMddss);
mm = ;