[英]Parse String date to specific format
这是一个字符串日期:
dob = reader.GetValue(7).ToString();` return like "12/2/2012"
但我想(在传递之前)转换为这种格式"2012212"
,我已经尝试过
string newDate = dob.ToString("yyyMMdd")
但我收到以下错误:
'string.ToString(System.IFormatProvider)的最佳重载方法匹配具有一些无效参数
任何想法 ?
如果基础返回类型为DateTime
则可以使用SqlDataReader.GetDateTime
那你只需要..
reader.GetDateTime(7).ToString("yyyyMdd");
如果以字符串形式存储和接收,则建议先转换为DateTime
,然后再查找特定格式。
var date = DateTime.ParseExact(dob, "dd/M/yyyy",CultureInfo.InvariantCulture);
var formattedDate = date.ToString("yyyyMdd");
并非获得输出的确切方法,但是它将起作用。
string dob = "12/2/2012";
string[] d1 = dob.Split('/');
string s = d1[2] + d1[1] + d1[0];
DateTime.ParseExact(reader.GetValue(7), "dd/M/dd", System.Globalization.CultureInfo.InvariantCulture).ToString("yyyyMMdd");
如果字符串中的日期格式为“ ddMMyyyy”,并且想要将其转换为“ yyyyMMdd”,则可以执行以下操作:
DateTime dt = DateTime.ParseExact(dob, "ddMMyyyy",
CultureInfo.InvariantCulture);
dt.ToString("yyyyMMdd");
您可以尝试以下方法将字符串转换为日期。
IFormatProvider culture = new CultureInfo("en-US", true);
dob = DateTime.ParseExact(reader.GetValue(7).ToString(), "dd/MM/yyyy", culture).ToString("yyyyMMdd");
谢谢。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.