如果我在字符串中有这个:10/13/2010 8:38:40 AM
如何做到这一点:13/10/2010 08:38:40
提前谢谢
答案 0 :(得分:9)
DateTime.ParseExact("10/13/2010 8:38:40 AM","MM/dd/yyyy h:mm:ss tt",CultureInfo.InvariantCulture).ToString("dd/MM/yyyy HH:mm:ss")
编辑以确保输出中使用24小时时钟
答案 1 :(得分:6)
使用DateTime.Parse()
转换为真正的DateTime对象,然后使用DateTime.ToString()
方法输出到您想要的格式(代码示例即将发布):
var dateTime = DateTime.Parse("10/13/2010 8:38:40 AM");
var formattedString = dateTime.ToString("dd/MM/yyyy HH:mm:ss);
答案 2 :(得分:2)
又快又脏:
DateTime.Parse("10/13/2010 8:38:40 AM", new CultureInfo("en-US")).ToString(new CultureInfo("en-GB"));
因为我知道这些格式适用于那些文化。但是,您可以在以下位置阅读有关日期时间格式的更多信息:
http://msdn.microsoft.com/en-us/library/zdtaw1bw.aspx
标准格式: http://msdn.microsoft.com/en-us/library/az4se3k1.aspx
自定义格式: http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx
答案 3 :(得分:2)
或者对于更通用的解决方案,只需将格式字符串传递给DateTime.ToString(' formatString ')。例如,你想要的是DateTime.ToString(“dd / MM / yyyy HH:mm:ss”)。这允许您制作任何您想要的格式。
示例:
DateTime exDT = DateTime.Now;
string exOut = exDT.toString("dd/MM/yyyy HH:mm:ss");
这是一张备忘单!你可以在你想要的地方使用“:”
d Short Date
D Long Date
t Short Time
T Long Time
f Full date and time
F Full date and time (long)
g Default date and time
G Default date and time (long)
M Day / Month
r RFC1123 date
s Sortable date/time
u Universal time, local timezone
Y Month / Year
dd Day
ddd Short Day Name
dddd Full Day Name
hh 2 digit hour
HH 2 digit hour (24 hour)
mm 2 digit minute
MM Month
MMM Short Month name
MMMM Month name
ss seconds
tt AM/PM
yy 2 digit year
yyyy 4 digit year
答案 4 :(得分:0)
var strfrom = "10/13/2010 8:38:40 AM";
DateTime dt = DateTime.Parse(strfrom, new CultureInfo("en-US"));
Console.WriteLine(dt.ToString(new CultureInfo("en-GB")));
答案 5 :(得分:0)
var curDate = DateTime.Now.ToString() ;
string customDateFormat = Convert.ToDateTime(curDate).ToString("dd/MM/yyyy");
答案 6 :(得分:0)
另一个变体,一行:
DateTime.Parse("10/13/2010 8:38:40 AM", new CultureInfo("en-US")).ToString("dd/MM/yyyy HH:mm:ss");