如果已声明 DayOfWeek,将 "new CultureInfo("nl-NL")" 放在哪里?

Where to put "new CultureInfo("nl-NL")" if DayOfWeek is already declared?

我应该把新的 CultureInfo("nl-NL") 放在哪里? 用户需要给出日期。 该程序需要用荷兰语显示日期。

DateTime date;

System.Console.Write("give date (DD/MM/JJJJ) : ");
date = DateTime.Parse(Console.ReadLine());

System.Console.Write("the day is a  " + date.DayOfWeek);

可以直接使用。 CultureInfo 实现了 IFormatProvider 接口。

DateTime date;

var cultureInfo = new CultureInfo("nl-NL");

System.Console.Write("give date (DD/MM/JJJJ) : ");
date = DateTime.Parse(Console.ReadLine(),cultureInfo);



System.Console.Write("the day is a  " + cultureInfo.DateTimeFormat.GetDayName(date.DayOfWeek));

将此与其他 using 语句放在一起:

using System.Threading;
using System.Globalization;

将此作为您的 Main 方法中的第一行代码:

Thread.CurrentThread.CurrentCulture = 
        new CultureInfo("nl-NL");
Console.WriteLine("Weekday: {0}", Thread.CurrentThread.CurrentCulture.DateTimeFormat
   .GetDayName(DateTime.Today.DayOfWeek));

然后您的应用程序将使用该区域性。它将用于日期时间格式、数字格式等。

如果您使用的是 UI 应用程序,例如 windows 表单,您还需要像这样设置 ui 区域性:

Thread.CurrentThread.CurrentUICulture = 
     new CultureInfo("nl-NL");

当您设置 CurrentUICulture 时,应用程序将从您的资源文件中获取信息,用于在 UI 中显示标签等。

var newCulture = new System.Globalization.CultureInfo("nl-NL");
var dayOfWeek = culture.DateTimeFormat.GetDayName(DateTime.Today.DayOfWeek);

System.Console.WriteLine("the day is a " + dayOfWeek);