使用变量格式化日期
本文关键字:日期 格式化 变量 | 更新日期: 2023-09-27 17:50:55
如下输出为20121212。
DateTime dd = new DateTime(2012, 12, 12);
string val = String.Format("{0:yyyyMMdd}", dd);
当格式在变量中时。下面的命令没有给出上面的输出。
DateTime dd = new DateTime(2012, 12, 12);
string dateFormat = "yyyyMMdd";
string val = String.Format("{0}:{1}", dd, dateFormat);
我如何能实现它使用格式在一个变量如上?
就用DateTime.ToString
:
string val = dd.ToString( dateFormat );
你混淆了String.Format
和你的格式字符串,它只以这种方式工作{0:yyyyMMdd}
。
我相信你有一个字符串变量的格式,可能这是你正在寻找的:
DateTime dd = new DateTime(2012, 12, 12);
string strFormat = "yyyyMMdd";
string val = String.Format("{0:"+ strFormat + "}", dd);
最简单的方法就是
DateTime dd = new DateTime(2012, 12, 12);
string strFormat = "yyyyMMdd";
string val = dd.ToString(strFormat);
String.Format
不直接支持可变格式字符串
您可以使用DateTime.ToString(string)方法:
DateTime dd = new DateTime(2012, 12, 12);
string dateFormat = "yyyyMMdd";
string val = dd.ToString(dateFormat);
尝试这样设置String.Format
;
DateTime dt = new DateTime(2012, 12, 12);
string Format = "yyyyMMdd";
string yourstring = String.Format("{0:" + Format + "}", dt);
Console.WriteLine(yourstring);
Demo
也可以使用。tostring(字符串格式)
DateTime dd = new DateTime(2012, 12, 12);
string strFormat = "yyyyMMdd";
string val = dd.ToString(strFormat);