public static CultureInfo CreateSpecificCulture(string name) { if (name == null) { throw new ArgumentNullException("name"); } if (name.Length == 0) { return(InvariantCulture); } var src_name = name; name = name.ToLowerInvariant(); CultureInfo ci = new CultureInfo(); if (!ci.construct_internal_locale_from_name(name)) { int idx = name.IndexOf('-'); if (idx < 1 || !ci.construct_internal_locale_from_name(name.Substring(0, idx))) { throw CreateNotFoundException(src_name); } } if (ci.IsNeutralCulture) { ci = CreateSpecificCultureFromNeutral(ci.Name); } return(ci); }
public static CultureInfo CreateSpecificCulture(string name) { if (name == null) { throw new ArgumentNullException("name"); } if (name.Length == 0) { return(InvariantCulture); } var src_name = name; name = name.ToLowerInvariant(); CultureInfo ci = new CultureInfo(); if (!ci.construct_internal_locale_from_name(name)) { int idx = name.IndexOf('-'); if (idx < 1 || !ci.construct_internal_locale_from_name(name.Substring(0, idx))) { throw CreateNotFoundException(src_name); } } if (ci.IsNeutralCulture) { ci = CreateSpecificCultureFromNeutral(ci.Name); } ci.m_cultureData = CultureData.GetCultureData(ci.m_name, false, ci.datetime_index, ci.CalendarType, ci.number_index, ci.iso2lang); return(ci); }
public static CultureInfo CreateSpecificCulture(string name) { if (name == null) { throw new ArgumentNullException("name"); } if (name.Length == 0) { return(InvariantCulture); } var src_name = name; name = name.ToLowerInvariant(); CultureInfo ci = new CultureInfo(); if (!ci.construct_internal_locale_from_name(name)) { int idx = name.Length - 1; if (idx > 0) { while ((idx = name.LastIndexOf('-', idx - 1)) > 0) { if (ci.construct_internal_locale_from_name(name.Substring(0, idx))) { break; } } } if (idx <= 0) { throw CreateNotFoundException(src_name); } } if (ci.IsNeutralCulture) { ci = CreateSpecificCultureFromNeutral(ci.Name); } var ti = ci.GetTextInfoData(); ci.m_cultureData = CultureData.GetCultureData(ci.m_name, false, ci.datetime_index, ci.CalendarType, ci.number_index, ci.iso2lang, ti.ansi, ti.oem, ti.mac, ti.ebcdic, ti.right_to_left, ((char)ti.list_sep).ToString()); return(ci); }
public static CultureInfo CreateSpecificCulture (string name) { if (name == null) throw new ArgumentNullException ("name"); if (name.Length == 0) return InvariantCulture; var src_name = name; name = name.ToLowerInvariant (); CultureInfo ci = new CultureInfo (); if (!ci.construct_internal_locale_from_name (name)) { int idx = name.IndexOf ('-'); if (idx < 1 || !ci.construct_internal_locale_from_name (name.Substring (0, idx))) throw CreateNotFoundException (src_name); } if (ci.IsNeutralCulture) ci = CreateSpecificCultureFromNeutral (ci.Name); ci.m_cultureData = CultureData.GetCultureData (ci.m_name, false, ci.datetime_index, ci.CalendarType, ci.iso2lang); return ci; }
public static CultureInfo CreateSpecificCulture (string name) { if (name == null) throw new ArgumentNullException ("name"); if (name.Length == 0) return InvariantCulture; var src_name = name; name = name.ToLowerInvariant (); CultureInfo ci = new CultureInfo (); if (!ci.construct_internal_locale_from_name (name)) { int idx = name.Length - 1; if (idx > 0) { while ((idx = name.LastIndexOf ('-', idx - 1)) > 0) { if (ci.construct_internal_locale_from_name (name.Substring (0, idx))) break; } } if (idx <= 0) throw CreateNotFoundException (src_name); } if (ci.IsNeutralCulture) ci = CreateSpecificCultureFromNeutral (ci.Name); var ti = ci.GetTextInfoData (); ci.m_cultureData = CultureData.GetCultureData (ci.m_name, false, ci.datetime_index, ci.CalendarType, ci.number_index, ci.iso2lang, ti.ansi, ti.oem, ti.mac, ti.ebcdic, ti.right_to_left, ((char)ti.list_sep).ToString ()); return ci; }