Below is the code that find the CultureInfo by ISO Currency Code
protected CultureInfo CultureInfoFromCurrencyISO( string isoCode )
{
CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.SpecificCultures);
foreach (CultureInfo ci in cultures)
{
RegionInfo ri = new RegionInfo(ci.LCID);
if (ri.ISOCurrencySymbol == isoCode)
{
return ci;
}
}
return null;
}
// Since one ISO Currency Code may be associated with more than one LCIDs
// We could rewrite the code to the following
public static IList CultureInfoFromCurrencyISO(string isoCode) { CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.SpecificCultures); IList Result = new ArrayList(); foreach (CultureInfo ci in cultures) { RegionInfo ri = new RegionInfo(ci.LCID); if (ri.ISOCurrencySymbol == isoCode) { if(!Result.Contains(ci)) Result.Add(ci); } } return Result; }