?
我有三个单独的下拉菜单,即 - mm、dd、yyyy - 定义日期格式。现在,我希望在每个列表中选择的值以"mm-dd-yyyy"格式连接。
这是我的前端代码:
<asp:DropDownList ID="drpmm" runat="server" CssClass="drp1">
</asp:DropDownList>
<asp:DropDownList ID="drpdte" runat="server" CssClass="drp1">
</asp:DropDownList>
<asp:DropDownList ID="drpyyyy" runat="server" CssClass="drp1">
</asp:DropDownList>
我希望这些值以提供的格式保存在XML文件中。我应该如何通过每个下拉列表中选择的值的串联
string finalDate = drpmm.SelectedItem.Text + "-" + drpdte.SelectedItem.Text + "-"
+ drpyyyy.SelectedItem.Text;
var date = string.Join("-", drpmm.SelectedItem.Text,
drpdte.SelectedItem.Text,
drpyyyy.SelectedItem.Text)
最好使用 Constructor DateTime(year, month, day)
创建一个 DateTime 类型对象,然后可以使用 ToString 格式化该对象,如果需要DateTime
类型对象,也可以稍后在代码中使用它。稍后您可以格式化它:
DateTimeObject.ToString("MM-dd-yyyy");
string dtStr = string.Format("{0}-{1}-{2}",drpyyyy.SelectedValue,drpdte.SelectedValue.PadLeft(2,'0'),drpmm.SelectedValue.PadLeft(2,'0');
DateTime dt = DateTime.Parse(dtStr);
dt.ToString("MM-dd-yyyy");
String.Format("{0:y yy yyy yyyy}", dt); // "8 08 008 2008" year
String.Format("{0:M MM MMM MMMM}", dt); // "3 03 Mar March" month
String.Format("{0:d dd ddd dddd}", dt); // "9 09 Sun Sunday" day
String.Format("{0:h hh H HH}", dt); // "4 04 16 16" hour 12/24
String.Format("{0:m mm}", dt); // "5 05" minute
String.Format("{0:s ss}", dt); // "7 07" second
String.Format("{0:f ff fff ffff}", dt); // "1 12 123 1230" sec.fraction
String.Format("{0:F FF FFF FFFF}", dt); // "1 12 123 123" without zeroes
String.Format("{0:t tt}", dt); // "P PM" A.M. or P.M.
String.Format("{0:z zz zzz}", dt); // "-6 -06 -06:00" time zone
有关更多信息 字符串格式