mar*_*d13 3 .net c# datetime cultureinfo currentculture
我有一个测试应用程序,允许用户从ComboBox中选择文化,并在多行TextBox中显示文化特定日期.代码如下:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
comboBox1.Items.AddRange(
CultureInfo.GetCultures(CultureTypes.SpecificCultures));
}
private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
{
CultureInfo selectedCulture = comboBox1.SelectedItem as CultureInfo;
DateTime currentDate = DateTime.Now;
textBox1.Text =
"My Date : " + currentDate.ToString() + Environment.NewLine +
"Culture Specific Date: " + currentDate.ToString(selectedCulture);
}
}
Run Code Online (Sandbox Code Playgroud)
我注意到如果选择"ar-SA",阿拉伯语(沙特阿拉伯),那么当我在不同的机器上运行应用程序时,我会看到不同的结果.
在Windows 7计算机上,文本框显示:
My Date : 4/11/2012 4:07:09 PM Culture Specific Date: 19/05/33 04:07:09 ?
在Windows XP计算机上,文本框显示:
My Date : 4/11/2012 4:07:09 PM Culture Specific Date: 20/05/33 04:07:09 ?
如您所见,文化特定日期是一天.可能导致这种差异的原因是什么?
我怀疑这是因为Windows XP机器没有接收到对Umm al-Qura日历的最新调整,而大概是Windows 7机箱保持最新,尽管我不希望这些调整影响当前月.或者,可能是由于这个原因:
直到最近才有更多的信息可用,现在可以重建最近在阿拉伯半岛采用的日历,并提前多年预测其未来的进程.
...所以也许Windows XP实现已经过时了.
(那个页面同意它目前是第19个,顺便说一下.)
| 归档时间: |
|
| 查看次数: |
360 次 |
| 最近记录: |