我从数据库中填充网格。在RowEditing
事件中,我将数据从网格提取到TextBox。这是我正在使用的代码
txtDate.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["BuyDate"]).ToShortDateString();
这为我提供02-06-2015
格式的日期,但我希望以02-Jun-2015
格式显示日期。
答案 0 :(得分:3)
您可以使用ToString
方法并传递所需的格式。
txtDate.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["BuyDate"]).ToString("dd-MMM-yyyy");
在this的底部,您还可以找到其他有用的格式。
答案 1 :(得分:3)
使用。格式化当前
DateTime
对象的值 由DateTime.ToShortDateString
method定义的模式 与当前的线程文化相关联。
这意味着,CurrentCulture
ShortDatePattern
dd-MM-yyyy
为CurrentCulture
。如果您想要txtDate.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["BuyDate"])
.ToString("dd-MMM-yyyy");
的{{3}},则可以使用DateTimeFormatInfo.ShortDatePattern
property代替。
CurrentCulture
请注意,如果您的MMM
不是基于英语的,那么此Jun
说明符将生成与IFormatProvider
不同的名称。在这种情况下,您可以提供基于英语的ToString
(如abbreviated month name)作为txtDate.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["BuyDate"])
.ToString("dd-MMM-yyyy", CultureInfo.InvariantCulture);
方法中的第二个参数,例如;
float input;
cin>>input; // if the user type string in input then throw exception
if(!isdigit(input)){
throw "error";
}
答案 2 :(得分:1)
要获取DateTime格式,请将字符串装入DateTime并通过ToString()使用格式化字符串,如:
txtDate.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["BuyDate"]).ToString("dd-MMM-yyyy");
访问MSDN的此链接以获取完整的详细信息:
https://msdn.microsoft.com/en-us/library/8kb3ddd4%28v=vs.110%29.aspx
答案 3 :(得分:1)
只需使用此
即可 Convert.ToDateTime(YourDataSet.Tables[0].Rows[0]["Date"]).ToString("dd MMM yyyy");
OR
Convert.ToDateTime(YourDataSet.Tables[0].Rows[0]["Date"]).ToString("dd/MMM/yyyy");
或者你想要什么
答案 4 :(得分:0)
请参见此处:examples如何格式化DateTimes。
在你的情况下,dd-MMM-yyyy
将是正确的模式。
如上所述,您不必使用string.Format()
,.ToString()
也允许传递模式。
请注意,您还应该考虑将信息保存为DateTime(而不是字符串)并将其格式化为Binding(如果您使用的是DataBinding),它将从基础数据中分离视图
答案 5 :(得分:0)
像这样:
txtDate.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["BuyDate"]).ToString("dd MMM yyyy");