我正在尝试将一个月的名称字符串转换为整数。从我的表格我得到一个月的字符串值,“行军”或“四月”。我想知道是否有一种方法可以使用库来获得1到12之间的数字作为月份值的代表:
int monthInDigit = DateTime.ParseExact("march", "MMMM", CultureInfo.CurrentCulture).Month;
此代码为我提供了此错误
如果没有,我想到的另一个解决方案是我的表单保存一个整数值而不是字符串名称,这似乎是目前最简单的解决方案。我仍然想知道你的想法以及是否有办法做到这一点。
答案 0 :(得分:1)
根据MSDN DateTimeFormatInfo.MonthNames,“行军”无效,必须大写。
String类型的一维数组,包含月份的特定于文化的全名。在12个月的日历中,数组的第13个元素是空字符串。 InvariantInfo的数组包含“1月”,“2月”,“3月”,“4月”,“5月”,“6月”,“7月”,“8月”,“9月”,“10月”,“11月” “,”十二月“和”“。 [强调我的]
在powershell中,您可以使用以下方式获取此列表:
[System.Globalization.CultureInfo]::CurrentCulture.DateTimeFormat.MonthNames