2017-01-21 17 views
-1

Где я могу поместить новую версию CultureInfo ("nl-NL")? Пользователь должен указать дату. Программе необходимо показать день на голландском языке.Где поставить «new CultureInfo (« nl-NL »)», если DayOfWeek уже объявлен?

DateTime date; 

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

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

Возможный дубликат [DateTime.Now.DayOfWeek.ToString() с CultureInfo] (http://stackoverflow.com/questions/5716762/datetime-now-dayofweek-tostring-with-cultureinfo) –

+0

@EugenePodskal Я видел это, и его разные. – Kartercas

+1

В таком случае вы должны быть более конкретным о том, что означает 'Где я могу поместить новый объект CultureInfo (« nl-NL »)?». Ваш вопрос должен, по крайней мере, описать результат, к которому вы стремитесь достичь. В противном случае мы просто ушли, пытаясь угадать, чего вы на самом деле хотите, и это обычно не заканчивается хорошо. См. Http://stackoverflow.com/help/how-to-ask –

ответ

0

Вы можете использовать его напрямую. 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)); 
+0

получил следующую ошибку: «Тип или имя пространства имен« CultureInfo »не удалось найти (вам не хватает директивы использования или ссылки на сборку?» – Kartercas

+0

с использованием System.Globalization; –

+0

с использованием System.Globalization; Ошибка исчезла, но он по-прежнему находится на английском языке. – Kartercas

0

Надень с другими с помощью операторов:

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)); 

Ваше приложение будет использовать эту культуру. Он будет использоваться для форматирования даты и времени, форматирования чисел и т.д.

Если вы используете приложение пользовательского интерфейса, как окна формы, то вы также должны установить культуру пользовательского интерфейса, как это:

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

При установке CurrentUICulture, тогда приложение получит информацию из вашего файла ресурсов для отображения меток и т. д. в пользовательском интерфейсе.

+0

Получил следующую ошибку: «Имя« Thread »не существует в текущем контексте» – Kartercas

+0

Вам нужно поставить инструкцию using на самом верху w здесь используются другие операторы. См. Мое редактирование. – CodingYoshi

+0

Ошибки исчезли, но он по-прежнему на английском. – Kartercas

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

System.Console.WriteLine("the day is a " + dayOfWeek); 
Смежные вопросы