将DateTime转换为string格式(“yyyyMMdd”)
我有一个问题转换为string格式的date时间,但我不能将其转换为yyyyMMdd格式。
我的代码是:
string tpoc = refSubClaim.BenefitsFolder.BenefitFolderIdNumber.ToString(); string[] tpocinfo = Regex.Split(tpoc,";"); for (int i = 0; i < tpocinfo.Length; i++) { switch (i) { case 0: { string[] tpoc2 = Regex.Split(tpocinfo[0], ","); claimantAuxillaryRecord.TPOCDate2 = tpoc2[0].ToString(); claimantAuxillaryRecord.TPOCAmount2 = Convert.ToDecimal(tpoc2[1]); claimantAuxillaryRecord.FundingDelayedBeyondTPOCStartDate2 = tpoc2[2].ToString(); } break;
如果你在格式为“ddMMyyyy”的string中有一个date,并且想把它转换为“yyyyMMdd”,你可以这样做:
DateTime dt = DateTime.ParseExact(dateString, "ddMMyyyy", CultureInfo.InvariantCulture); dt.ToString("yyyyMMdd");
parsingdate时间:
要parsingDateTime,请使用以下方法之一:
-
DateTime.Parse
-
DateTime.ParseExact
或者,你可以使用try-parse模式:
-
DateTime.TryParse
-
DateTime.TryParseExact
详细了解自定义date和时间格式string 。
将DateTime转换为string:
要以“yyyyMMdd”格式返回DateTime作为string,可以使用ToString
方法。
- 代码片段的例子:
string date = DateTime.ToString("yyyyMMdd");
- 注意大写字母M表示月份,小写字母m表示分钟。
你可以把你的string转换成如下所示的DateTime
值:
DateTime date = DateTime.Parse(something);
您可以将DateTime
值转换为格式化的string,如下所示:
date.ToString("yyyyMMdd");
string为yyyy-MM-dddate格式:示例:
TxtCalStDate.Text = Convert.ToDateTime(objItem["StartDate"]).ToString("yyyy/MM/dd");
如果您希望将TIME作为string进行计算, 我们可以这样做:
//Date and Time is taking as current system Date-Time DateTime.Now.ToString("yyyyMMdd-HHMMss");
如果你想匹配一个特定的date格式使用DateTime.TryParseExact()
string format = "yyyyMMdd"; DateTime dateTime; DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime);
您可以使用DateTime.TryParse()
而不是DateTime.Parse()
。
使用TryParse()
,如果成功,则返回值,如果使用Parse()
,则必须处理exception
没有它与yyyy / mm / dd的string,我需要它在yyyyMMdd格式
如果你只需要从一个string中删除斜杠,你不要把它们replace掉吗?
例:
myDateString = "2013/03/28"; myDateString = myDateString.Replace("/", "");
myDateString现在应该是“20130328”。
less了一个矫枉过正的:)
基于属性名称,它看起来像你试图通过赋值将string转换为date:
claimantAuxillaryRecord.TPOCDate2 = tpoc2[0].ToString();
这可能是由于当前的用户界面文化,因此它不能正确解释datestring时分配。
只需要这样做。
string yourFormat = DateTime.Now.ToString("yyyyMMdd");
快乐编码:)
我在search这个答案时遇到了一个更简单的方法;
string date = DateTime.Now.ToString("yyyyMMdd", System.Globalization.CultureInfo.GetCultureInfo("en-US"));
你可以试试这些代码
claimantAuxillaryRecord.TPOCDate2 = Convert.ToDateTime(tpoc2[0]).ToString("yyyyMMdd");
要么
claimantAuxillaryRecord.TPOCDate2 = Convert.ToDateTime(tpoc2[0]).ToString("yyyyMMdd hh:mm:ss");
这是转换为格式的简单方法
DateTime.Now.ToString("yyyyMMdd");