我正在尝试使用子字符串,以便在我的aspx母版页上获取日期的特定部分。我需要这个的原因与我下载的模板和它背后的CSS有关。这是我得到的代码:
<span><%= DateTime.Today.ToString("M").Substring(3), ((int)(DateTime.Today.ToString("M").Length) - 2) %></span>
我需要选择当前月份,以便前3个字符位于第一个范围内,其余字符位于第二个范围内。我需要减去2的原因是因为它增加了之后一个月的日期。
提前感谢您的帮助。
答案 0 :(得分:7)
首先,你应该使用正确的格式字符串。
这将为您提供月份缩写(Jan,Feb,Mar等)
<%= DateTime.Today.ToString("MMM") %>
这将为您提供完整的月份名称
<%= DateTime.Today.ToString("MMMM") %>
然后你可以在这些上做子串,而不用担心解析这一天。
类似的东西:
// You can create the variable here, in the code behind, or just use a repeated
// call instead of assigning it a variable.
<% var month = DateTime.Today.ToString("MMMM"); %>
<%= DateTime.Today.ToString("MMM") %>
<%= month.Substring(3, month.Length - 3) %>
“MMM”不应该返回超过3个字符(至少在en-us中),但是如果你不想硬编码3,你可以用“MMM”调用的长度替换它。
请参阅此MSDN Custom Date and Time Formatting文章。
答案 1 :(得分:0)
您只需制作两个独立的代码块:
<span><%= DateTime.Today.ToString("MMM") %>,</span>
<span><%= DateTime.Today.ToString("dd") </span>