0

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

4

3 回答 3

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");
于 2013-03-14T02:31:26.237 回答
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);
于 2013-03-14T02:32:19.933 回答
1

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

  DateTime.TryParseExact() 

然后使用 DateTime 对象,您可以再次对其进行格式化。像下面的例子:

  dateTimeObject.ToString(YourFormatInString);

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

于 2013-03-14T02:56:55.070 回答