你需要的是
System.DateTime
结构体。
首选方法:
sb.Append(DateTime.Now.AddMonths(1).ToString("MMddyyHHmm"));
作为 Joel Coehoorn 指出的,你可以将那段代码压缩成一行。我在实现上已经过于沉迷,没有看到你实际想要做什么 - 幸运的是,Joel 指出了这一点。
这将把所有这些内容都合并成一个调用。相当巧妙。
直接翻译(不建议):
要将您的 Java 代码转换为 C#,您需要执行以下操作:
string year = DateTime.Now.Year.ToString();
sb.Append(DateTime.Now.AddMonths(1));
sb.Append(DateTime.Now.Day);
sb.Append(year.Substring(2));
sb.Append(DateTime.Now.Hour);
sb.Append(DateTime.Now.Minute);
您可以复制/粘贴以下C#代码进行查看:
StringBuilder sb = new StringBuilder();
string year = DateTime.Now.Year.ToString();
sb.Append(String.Format("Next Month is: {0} \n ",DateTime.Now.AddMonths(1)));
sb.Append(String.Format("Day is {0}\n ", DateTime.Now.Day));
sb.Append(String.Format("Year is {0}\n ", year.Substring(2)));
sb.Append(String.Format("The Hour is {0}\n ", DateTime.Now.Hour));
sb.Append(String.Format("The Minute is {0}\n ", DateTime.Now.Minute));
关于Java中的DateTime问题
DateTime
结构没有Java在日期实现方面遇到的问题,所以你不应该遇到困扰Java世界的同样的问题。
其他方法
正如另一个用户指出的,你也可以使用System.Globalization.Calendar
类。我只用DateTime
结构就能很好地工作,它比Calendar类更轻量级,但两者都可以使用。如果你要在日期和日历实现之间跳转,那么选择Calendar
类;如果你要坚持一种日期实现,那么DateTime
结构就足够了。