C# 拆分字符串

C# 拆分字符串,c#,datetime,formatting,C#,Datetime,Formatting,我有一根这样的绳子 string strdate =@"5/2/2006"; 其形式为月/日/年 我需要以这样的形式显示它02-05-2006 如何格式化这样的数据? 如果该值如下所示:12/28/2005,则应如下所示显示:28-12-2010 我知道我们应该根据我们应该做的来分割数据 我不知道该怎么做 任何帮助都很好。将字符串解析为DateTime,然后使用具有正确格式的ToString将其输出 DateTime dt = DateTime.ParseExact(@"5/2/2006",

我有一根这样的绳子

string strdate =@"5/2/2006";
其形式为
月/日/年

我需要以这样的形式显示它
02-05-2006

如何格式化这样的数据?

如果该值如下所示:
12/28/2005
,则应如下所示显示:
28-12-2010

我知道我们应该根据我们应该做的来分割数据

我不知道该怎么做


任何帮助都很好。

将字符串解析为
DateTime
,然后使用具有正确格式的
ToString
将其输出

DateTime dt = DateTime.ParseExact(@"5/2/2006", 
                                  "MM/dd/yyyy", 
                                  CultureInfo.InvariantCulture);
string output = dt.ToString("dd-MM-yyyy");

我建议阅读日期和时间格式字符串。

您可以使用string.replace:

string newString = oldString.Replace('/', '-');

这将用“-”替换每个“/”并创建一个新字符串,但不会在旧字符串中替换它,因为字符串是不可变的。

请阅读如何解析
DateTime
字符串:

然后你在这里读到如何打印它:

@Kevin

var datearray = strdate.split('/'); string date = datearray[0] + "-" + datearray[1] + "-" datearray[2] var datearray=strdate.split('/'); 字符串日期=日期数组[0]+“-”+日期数组[1]+“-”日期数组[2] 第1期
从第10天到第31天这不起作用。。。它将在每天添加前导零。
2010年5月12日是好消息,但对于ex.12-021-2010则不是好消息

第二期

MM dd的顺序错误

您不能通过拆分字符串来处理日期。使用手边的框架!啊,好的。我读了它,就好像他只是想改变字符串中的一些字符。