将元素中的日期检索为字符串,然后从日期中检索年份

时间:2012-08-22 16:31:23

标签: c# xml

我有一个我写的方法,从节点中提取日期:

strRemoveByDate = element.SelectSingleNode("Date_Removed").InnerText

给了我“2012-01-01”或任何情况。

现在我需要抓住这一年。我尝试使用子字符串,但它不起作用:

String strYear = strRemoveByDate.Substring(0,4);

我需要在这做什么?

编辑::向Skeet先生道歉。我不想变得粗鲁无礼。我感谢任何帮助。通过'它不工作'我的意思是:

我尝试从字符串中解析年份中的四位数字。什么都没发生。我进入我在VS中工作的页面,向var strYear添加一个quickwatch,并且它说'strYear在当前上下文中不存在'。什么都没有读到strYear。

编辑2:事实证明这里有一些奇怪的事情......我尝试了所有这些解决方案,没有工作(坚持......我会详细说明)。非常奇怪的行为。所以在我写的方法中,我把声明

String nonsenseString = "nonsense";

并且IDE甚至没有选择它。所以.....似乎我的整体问题是我甚至无法宣布一个字符串,无论我如何尝试......

我已关闭并重新打开页面,关闭IDE并重新启动它,然后关闭我的工作站并重新启动它。

无济于事。

3 个答案:

答案 0 :(得分:2)

DateTime getyear = DateTime.Parse(strRemoveByDate);
String strYear =getyear.year.ToString()

答案 1 :(得分:2)

int year = DateTime.ParseExact("2012-01-01", "yyyy-MM-dd", CultureInfo.CurrentCulture).Year;

答案 2 :(得分:1)

你可以这样做:

String strYear = strRemoveByDate.Split('-')[0];

将第一部分拆分为-