首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在C#中将月份名称(字符串)解析为整数进行比较?

如何在C#中将月份名称(字符串)解析为整数进行比较?
EN

Stack Overflow用户
提问于 2008-11-03 14:33:08
回答 14查看 149K关注 0票数 99

我需要能够比较数组中的一些月份名称。

如果有一些直接的方法就好了,比如:

代码语言:javascript
复制
Month.toInt("January") > Month.toInt("May")

我的谷歌搜索似乎表明唯一的方法是编写你自己的方法,但这似乎是一个足够常见的问题,我认为它已经在.Net中实现了,以前有人这样做过吗?

EN

回答 14

Stack Overflow用户

回答已采纳

发布于 2008-11-03 14:40:19

DateTime.ParseExact(monthName, "MMMM", CultureInfo.CurrentCulture ).Month

不过,出于您的目的,最好只创建一个Dictionary<string, int>,将月份的名称映射到它的值。

票数 189
EN

Stack Overflow用户

发布于 2008-11-03 14:42:24

你可以这样做:

代码语言:javascript
复制
Convert.ToDate(month + " 01, 1900").Month
票数 22
EN

Stack Overflow用户

发布于 2008-11-03 14:58:59

如果您使用一些人建议的DateTime.ParseExact()-method,那么您应该仔细考虑当应用程序在非英语环境中运行时会发生什么!

在丹麦,哪种ParseExact("Januar", ...)ParseExact("January", ...)应该工作,哪种应该失败?

这将是CultureInfo.CurrentCultureCultureInfo.InvariantCulture之间的区别。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/258793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档