How to produce localized date string with CultureInfo

前端 未结 2 1974
情深已故
情深已故 2020-12-06 09:18

I have the following code that produces a date string in en-us format. I would like to pass in the LCID (or equivalent value for the localized language) to produce the local

2条回答
  •  太阳男子
    2020-12-06 10:03

    You can use the second argument to the toString function and use any language/culture you need...

    You can use the "d" format instead of ToShortDateString according to MSDN...

    So basically something like this to return as Australian English:

    CultureInfo enAU = new CultureInfo("en-AU");
    dt.ToString("d", enAU);
    

    you could modify your method to include the language and culture as a parameter

    public static string ConvertDateTimeToDate(string dateTimeString, String langCulture) {
    
        CultureInfo culture = new CultureInfo(langCulture);
        DateTime dt = DateTime.MinValue;
    
        if (DateTime.TryParse(dateTimeString, out dt))
        {
            return dt.ToString("d",culture);
        }
        return dateTimeString;
      }
    

    Edit
    You may also want to look at the overloaded tryParse method if you need to parse the string against a particular language/culture...

提交回复
热议问题