将日期时间从英语转换为西班牙语

本文关键字:转换 西班牙语 英语 日期 时间 | 更新日期: 2023-09-27 18:03:30

有人知道如何将DateTime从英语转换为西班牙语吗?

E。g转换:

2011年1月1日星期一

生态学报,2011 ??

将日期时间从英语转换为西班牙语

可以使用DateTime。使用English CultureInfo将输入解析为DateTime值的方法。然后可以使用DateTime。ToString方法,带有西班牙文CultureInfo,用于将DateTime值转换为字符串。

var input = "Tuesday, July 26, 2011";
var format = "dddd, MMMM dd, yyyy";
var dt = DateTime.ParseExact(input, format, new CultureInfo("en-US"));
var result = dt.ToString(format, new CultureInfo("es-ES"));
// result == "martes, julio 26, 2011"

考虑到西班牙语用户可能更喜欢西班牙语标准格式,而不是您的自定义格式:

var result = dt.ToString("D", new CultureInfo("es-ES"));
// result == "martes, 26 de julio de 2011"

您可以使用CultureInfo来做到这一点,如果您在正在运行的线程中设置了当前区域性,那么日期将以正确的区域性格式化http://msdn.microsoft.com/en-us/library/5hh873ya.aspx

在vb.net

    Dim TheDate As DateTime = DateTime.Parse("January 01 2011")
Thread.CurrentThread.CurrentCulture = New CultureInfo("es-ES")
MsgBox(TheDate.ToLongDateString)
c#

DateTime TheDate = DateTime.Parse("January 01 2011");
Thread.CurrentThread.CurrentCulture = new CultureInfo("es-ES");
Interaction.MsgBox(TheDate.ToLongDateString());

获取日期时间。在需要的时候翻译。

private DateTime lastConnection = DateTime.Now;
String dateString =lastConnection.ToString("dd") +" de "+ lastConnection.ToString("MMMM",new CultureInfo("es-ES"))