2017-03-09 59 views
0

假设您有一个字符串5/9/2010,并且您想重新排列它以读取2010/5/9。你会怎么做呢?Unity3d重新排列字符串

我想通过恰好是日期的字符串对列表进行排序。尽管我可以把它变成一个日期,但如果可能的话,我想坚持使用一个字符串,因为日期时间的一部分很难消除。 (这是一个用于Unity3d应用程序的sqlite数据库。) 请原谅我,如果这是重复的。

回答

2

如果你能保证该字符串将永远是相同的输入格式,可以拆分对/字符串:

string input = "5/9/2010"; 
    string[] inputSections = input.Split('/'); 
    string output = string.Format("{0}/{1}/{2}", inputSections[2], inputSections[0], inputSections[1]); 

Working Fiddle

我的代码是非常详细的,你当然可以简化它符合你的需求。我也将利用C#的6 string inerpolation功能,如果它是提供给你:

string input = "5/9/2010"; 
    string[] inputSections = input.Split('/'); 
    string output = $"{inputSections[2]}/{inputSections[1]}/{inputSections[0]}"; 
+0

谢谢!看起来这会很好地工作! –

1

我会建议解析之日起,在关机会,该输入的日期是不完全在您所期望的格式,但确实是一个有效的日期。这是解析的目的。

CultureInfo us = CultureInfo.GetCultureInfo("en-US"); 
string input = "5/9/2010"; 
DateTime date = DateTime.Parse(input, us); 

Console.WriteLine(date.ToString("yyyy/MM/dd", us)); 

您可以测试here