我搜索了SO以找到此问题的答案,并找到了"How to add literal strings in a DateTime format?"。
我尝试了接受的解决方案,但没有得到我预期的结果。我的代码如下:
DateTime.Now.ToString("'Previously exported on' d 'at' t")
返回“先前在P处7上导出”
我原以为它会返回“以前在02/07/2014 05:46 PM退出”
我也尝试过:
DateTime.Now.ToString("'Previously exported on' f")
返回“以前导出为0”
但是,如果我只使用简单格式字符串,我会得到预期的结果:
DateTime.Now.ToString("d")
返回“02/07/2014”
DateTime.Now.ToString("t")
返回“05:46 PM”
DateTime.Now.ToString("f")
返回“2014年2月7日星期五下午05:46”
我错过了什么? “短”格式字符串是否可以与文字一起使用?
答案 0 :(得分:2)
您可以随时使用string.Format
,这样您就可以使用{ index[,alignment][ :formatString] }
指定每个索引的格式。即,
string.Format("Previously exported on {0:d} at {0:t}", DateTime.Now);
看起来重载DateTime.ToString(string format)
需要标准或自定义DateTime格式字符串 - 它不能兼容两者。
format参数应包含单个格式说明符字符(请参阅标准日期和时间格式字符串)或自定义格式模式(请参阅自定义日期和时间格式字符串),它定义返回字符串的格式