C#ASP.NET:可以';t将日期时间转换为字符串
本文关键字:日期 时间 转换 字符串 NET 可以 C#ASP | 更新日期: 2023-09-27 18:00:03
我想将datetime
转换为字符串。
但现在返回的结果是04 August, 0016
,这不是我所需要的。
我希望结果是04 August, 2016
。
C#代码:
DataTable dtGroupCurr = new DataTable();
dtGroupCurr = sourceGroupCurr.Tables[0];
var groupedCurr = (from dt2 in dtGroupCurr.AsEnumerable()
select new
{
S_DATE = dt2.Field<DateTime>("S_DATE"),
BANK_CODE = dt2.Field<string>("BANK_CODE"),
BANK_NAME = dt2.Field<string>("BANK_NAME")
}).Distinct().OrderBy(x => x.S_DATE);
foreach (var s in groupedCurr)
{
string rDate = s.S_DATE.ToString("yyyy/MM/dd");
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime date = DateTime.Parse(rDate, culture);
string sDate = date.ToString("dd MMMM, yyyy", CultureInfo.InvariantCulture);
}
提前感谢;)
尝试:
string sDate = s.S_DATE.ToString("dd MMMM, yyyy", new CultureInfo("en-US", true));
或
string rDate = s.S_DATE.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture); // To avoid override
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime date = DateTime.Parse(rDate, culture);
string sDate = date.ToString("dd MMMM, yyyy", CultureInfo.InvariantCulture);
"/"自定义格式说明符表示日期分隔符用于区分年、月和天。合适的本地化日期分隔符是从当前或指定的DateTimeFormatInfo.DateSeparator属性文化
MSDN
使用DateTime.ParseExact方法并指定如下格式:
string rDate = s.S_DATE.ToString("yyyy/MM/dd");
IFormatProvider culture = new CultureInfo("en-US", true);
DateTime date = DateTime.ParseExact(rDate, "yyyy/MM/dd", culture);
string sDate = date.ToString("dd MMMM, yyyy", CultureInfo.InvariantCulture);
使用日期或DateTime.ToShortDateString()或Date.ToString("dd-MM-yyyy")