尝试将字符串转换为日期时间的格式与字符串不同 - c#

因此,我不得不将(MM-dd-yyyy)格式的日期转换为(dd-MMM-yyyy)。我最终要做的是...

string strProvisionalDate = "04-22-2001";
string strFormat = "MM-dd-yyyy";
DateTime dtProvisional;
DateTime.TryParseExact(strProvisionalDate, strFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out dtProvisional);
string strProvisionalDateConverted = dtProvisional.ToString("dd-MMM-yyyy");
string strFormatConverted = "dd-MMM-yyyy";
DateTime dtProvisionalConverted;
DateTime.TryParseExact(strProvisionalDateConverted, strFormatConverted, CultureInfo.InvariantCulture, DateTimeStyles.None, out dtProvisionalConverted);

基本上,我将其转换为DateTime,将其转换为所需格式的字符串,然后将其转换回DateTime。它可以工作,但是我很好奇,问是否有更好的方法可以做到这一点……看起来并不优雅。

编辑:原来,在这个dtProvisional和dtProvisionalConverted最终是相同的。所以我的新问题是,如何将MM-dd-YYYY格式的字符串转换为dd-MMM-yyyy格式的DateTime? dtProvisional即将进入SQL数据库,并且必须为日期格式。

参考方案

DateTime对象不将日期/时间存储为格式,而是将其存储为自纪元以来的多次滴答。作为对象的dtProvisional和dtProvisionalConverted DateTime之间应该没有区别(它们的不可撤销值应该相同)。使用字符串格式功能将DateTime输出为字符串时,可以始终更改字符串格式。

请参阅此MSDN article上的备注部分。

我将正确格式化您的日期以输出:

String.Format(“ {0:dd-MMM-yyyy}”,dt);

当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java

我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…

改造正在返回一个空的响应主体 - java

我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…

每个文件合并后添加换行 - python

我有很多类似以下内容的JSON文件:例如。1.json{"name": "one", "description": "testDescription...", "comment": ""} test.json{"name"…

在Map中,如果我们使用现有键进行修改,则不会获得ConcurrentModificationException - java

我有以下代码,我希望从情况2的情况下抛出ConcurrentModificationException,但它运行成功。据我所知,如果我对地图中的单个键执行相同的操作,则不会抛出异常,因为here但是当我重现这种具有两个案例的多个密钥的场景时,通过新密钥修改。通过现有密钥进行修改。情况1: Map<String,String> mp = new H…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …