Tag: datetime format

当给定的文化不知道格式时,Convert.ToDateTime()如何解析给定的字符串

我有以下代码,它的工作原理。 string testDateStr = “2009.7.28 05:23:15”; DateTime testDateObj = Convert.ToDateTime(testDateStr, CultureInfo.GetCultureInfo(“fr-FR”)); 我检查了我的文化的有效格式: string[] validFormats = testDateObj.GetDateTimeFormats(CultureInfo.GetCultureInfo(“fr-FR”)); 并且它们都不符合“2009.7.28 05:23:15”格式。 我想知道如何在不抛出格式exception的情况下对其进行解析,以及在调用Convert.ToDateTime()时执行何种隐藏解析。 更新:在LakshmiNarayanan的回答后我尝试了以下内容。 foreach(var culture in CultureInfo.GetCultures(CultureTypes.AllCultures)) { foreach(var format in testDateObj.GetDateTimeFormats(culture)) { if (format == testDateStr) { Console.WriteLine(culture.DisplayName); } } } 有些文化实际上包含了我的字符串所在的格式,但仍然无法解释为什么当我们要求它使用特定文化进行转换时它不会抛出exception,而该文化不知道字符串所在的格式。

使用星期几获取日期

我在使用星期几查找日期时遇到问题。 例如:我有过去约会可以说, Date date= Convert.TodateTime(“01/08/2013”); 2013年1月8日星期二是星期二。 现在我想要本周的星期二约会。 我怎么做 注意:过去的日期是动态的。 它会在每个循环中发生变化。

使用DateTime.TryParseExact解析非标准日期格式

嗨我试图解析日期字符串,如“1012012”,“2012年1月1日”。 阅读Api它说使用d,%d,其中日期没有前导0.不能让它适用于像“1012012”这样的日期 试图用“d MMM YYYY”作为“2012年1月1日”,我怎么用’st’,’th’有效? using System; using System.IO; using System.Globalization; namespace test { class Script { static public void Main(string [] args) { //String dateString = “9022011”; // q1 String dateString = “9th February 2011”; //q2 System.DateTime date = DateTime.MinValue; string[] format = { “ddMMyyyy”, “d MMM yyyy” }; // what would be the […]

CultureInfo(来自同一文化)的实例基于OS的变化

我有一个写下这样日期的网站: CultureInfo cultureInfo = CultureInfo.GetCultures(CultureTypes.AllCultures).FirstOrDefault(c => string.Equals(c.TwoLetterISOLanguageName, MvcApplication.Language)); return string.Concat(date.Day, “.”, cultureInfo.DateTimeFormat.GetAbbreviatedMonthName(date.Month)); 在我的PC(Windows 7,Service Pack 1,西class牙文化)和服务器(Windows Server 2012,英语文化)中, MvcApplication.Language就是这样,我从列表中得到的文化是: es-ES 。 我希望他们都写相同的字符串(他们有不同的文化,但我没有使用CurrentCulture )。 然而,我的PC和Abr.的结果非常好Abr. 在服务器中。 我已经尝试使用LinqPAD从MvcApplication.Language隔离出来,但它仍然不同。 我打印了AbbreviatedDayNames和AbbreviatedMonthNames的数组,它们在每台计算机上都不同。 我做错了什么或这是预期的行为? 如何使其完全独立于Windows /用户文化?

将不同格式的DateTime转换为特定的String格式

我从不同的机器获取System.datetime.now 。每个系统具有不同的日期时间格式作为下面的大小 16-Oct-12 7:25:22 PM 16/10/2012 7:10:47 PM [DD/MM/YYYY] 10/16/2012 7:10:51 PM [MM/DD/YYYY] 如何将不同格式的DateTime转换为特定的String格式? string sDateTime = DateTime.Now.ToString(“dd/MM/yyyy hh:mm:ss tt”);

将DateTime从英语转换为西class牙语

有人知道如何将DateTime从英语转换为西class牙语吗? 例如转换: 2011年1月1日星期一 成 Lunes,Enero 01,2011 ??? 提前致谢。

DateTimeStyles.RoundtripKind枚举是什么意思?

我正在阅读回答者的post, 在这里我遇到了这个我想要了解的枚举器DateTimeStyles.RoundtripKind 。 我查看了MSDN ,其中说: 使用“o”或“r”标准格式说明符将DateTime对象转换为字符串时,将保留日期的DateTimeKind字段,然后将该字符串转换回DateTime对象。 我引用的post中输入的时间戳如下: 我运行她的代码,它仍然有效。 现在连接我所拥有的所有信息都是一团糟: 上述时间戳包含一些标识符T MSDN文档讨论了o和r格式说明符,它没有说明它是什么? 如果你在上面引用的MSDN链接上深入挖掘有关DateTimeKind枚举的更多细节,它就没有提及o和r格式说明符。 以下链接说: Member Name | Description ——————————————————————————– Local | The time represented is local time. Unspecified | The time represented is not specified as either local time or Coordinated Universal Time (UTC). Utc | The time represented is UTC. PS我尝试在上面创建一个表,但似乎SO没有创建表格结构的原生支持。 那么有人可以帮我理解DateTimeStyles.RoundtripKind枚举及其工作原理吗?

如何实现字符串转换的时间跨度?

我试着在这里搜索,但它对我帮助不大.. 我想将 time_span 转换为字符串,我不想在几天内返回时间跨度..但只有HH:mm:ss。 怎么实现呢? 我的示例代码在这里: String time_span_par = “06:12:40”; String time_str = “18:13:59”; TimeSpan time_span_var = TimeSpan.Parse(time_span_par); TimeSpan time_span = TimeSpan.Parse(time_str); time_span = time_span.Add(time_span_var); string temp = time_span.ToString(“HH:mm:ss”);

自1970年以来在C#中计算的毫秒数与JavaScript不同

我需要在C#中计算JavaScript getTime方法。 为简单起见,我选择了UTC中的固定日期并比较了C#: C# DateTime e = new DateTime(2011, 12, 31, 0, 0, 0, DateTimeKind.Utc); DateTime s = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); TimeSpan t = (e – s); var x = t.TotalMilliseconds.ToString(); => 1325289600000 和JavaScript结果: JavaScript var d = new Date(2011, 12, 31, 0, 0, 0) var utcDate = new Date(d.getUTCFullYear(), […]

获得短暂的名字

我想知道如何编写一个方法,它将返回一个包含短日期名称的字符串,例如: public static string GetShortDayName(DayOfWeek day) 现在,如果我打电话: string monday = GetShortDayName(DayOfWeek.Monday); 如果文化是en,我会回到“mo”,如果文化是例如,我会回到“lu”。