创建格式化为日期的字符串副本

时间:2013-03-14 02:27:45

标签: c# .net datetime

我有一个格式为YYYYMMDD的字符串 - 如何以YYYY-MM-DD格式制作副本?

3 个答案:

答案 0 :(得分:2)

// this is your original string
string _str = "20130101";

// you need to convert it to valid DateTime datatype
// so you can freely format the string to what you want
DateTime _date = DateTime.ParseExact(_str, "yyyyMMdd", CultureInfo.InvariantCulture);

// converting to your desired format, which is now a string
string _dateStr = _date.ToString("yyyy-MM-dd");

答案 1 :(得分:2)

您必须解析DateTime,然后重新格式化:

var input = ...
var inFormat = "yyyyMMdd";
var outFormat = "yyyy-MM-dd";
var date = DateTime.ParseExact(inFormat, input, CultureInfo.InvariantCulture);
var output = date.ToString(outFormat);

答案 2 :(得分:1)

安全方法是将其转换为DateTime对象,例如在.Net中使用以下函数:

  DateTime.TryParseExact() 

然后使用DateTime对象,您可以再次格式化它。如下例所示:

  dateTimeObject.ToString(YourFormatInString);

查看MSDN以获取更多详细信息:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx