DateTimeFormatInfo.InvariantInfo или null в ToString / TryParseExact - PullRequest
0 голосов
/ 14 сентября 2010

Мне интересно, какова разница между приложением между этими двумя вызовами, в смысле результирующего объекта DateTime, будет ли TryParseExact успешным, и результат операции ToString:

DateTime.TryParseExact(value, "MMM yyyy", DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out conversionResult)

DateTime.TryParseExact(value, "MMM yyyy", null, DateTimeStyles.None, out conversionResult)

и этих двух вызовов:

conversionResult.ToString("d M yyyy", DateTimeFormatInfo.InvariantInfo)

conversionResult.ToString("d M yyyy")

Я знаю, что предоставление нулевого значения приведет к использованию информации о культуре потоков ...

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

Спасибо, Павел

1 Ответ

1 голос
/ 14 сентября 2010

Какие названия месяцев вы ожидаете использовать, просто в качестве примера того, как культура может иметь значение?

Конечно, в некоторых форматах, которые не будут иметь значения,но в других это будет.Например:

using System;
using System.Globalization;
using System.Threading;

class Test
{
    static void Main()
    {
        CultureInfo french = new CultureInfo("fr-FR");
        Thread.CurrentThread.CurrentCulture = french;
        DateTime now = DateTime.Now;
        Console.WriteLine(now.ToString("d MMM yyyy"));
        Console.WriteLine(now.ToString("d MMM yyyy",
                                       CultureInfo.InvariantCulture));
    }
}

Результаты:

14 sept. 2010
14 Sep 2010

(И это довольно простой случай.)

При разборе или форматировании строки необходимо учитыватьявляется ли источник / цель компьютером или пользователем.Если это компьютер, инвариантная культура, вероятно, является наиболее подходящей.Если это пользователь, его культура, вероятно, является наиболее подходящей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...