我有一个问题转换为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");