如何使用格式字符串实现以下功能:Do 01.01.2009? 它必须适用于所有语言(例如德国的例子)。所以应该只有短工作日,然后是短日期。
我试过'ddd''(没有')。然而,这导致'Do 01'。 是否有一个我可以放在'd'之前的角色,以便它可以单独使用或类似的东西?
答案 0 :(得分:3)
DateTime.Now.ToString("ddd dd/MM/yyyy")
答案 1 :(得分:0)
如果您的目标受众使用不同的语言,则应使用ISO 8601标准。
DateTime.Now.ToString("ddd yyyy-MM-dd");
或者,您可以使用较短的日期定位当前文化:
DateTime.Now.ToString("d", Thread.CurrentThread.CurrentCulture);
或长日期:
DateTime.Now.ToString("D", Thread.CurrentThread.CurrentCulture);
答案 2 :(得分:0)
要获取特定于语言环境的短日期以及语言环境日名称,那么您将不得不使用两个调用,因此:
myDate.ToString("ddd ") + myDate.ToString("d");
您是否考虑过使用长日期格式?
答案 3 :(得分:0)
如果你想本地化(我假设,因为你说“所有语言”),你可以使用CultureInfo来设置你想要显示的不同文化。 MSDN库包含Standard Date and Time Format Strings和CultureInfo Class的信息。
示例MSDN提供:
// Display using pt-BR culture's short date format
DateTime thisDate = new DateTime(2008, 3, 15);
CultureInfo culture = new CultureInfo("pt-BR");
Console.WriteLine(thisDate.ToString("d", culture)); // Displays 15/3/2008
答案 4 :(得分:0)
仅供参考,在Java中它是这样的:
DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
Date date = new Date();
String formattedDate = dateFormat.format(date);
答案 5 :(得分:0)
如果要确保将相同的字符用作分隔符,则必须使用反斜杠来转义字符,否则它将默认为您所在的语言环境。如果您需要指定的格式,我建议使用此字符串在你的问题
DateTime.Now.ToString("ddd dd.MM.yyyy");
要使用正斜杠,您应该转义它们,以便它们始终以斜杠形式输出。
DateTime.Now.ToString("ddd dd\\/MM\\/yyyy");