Domanda

I have to perform mapping between ISO 3166-1 alpha-3 and IOC country codes.

It looks like there is no way to do this natively via .NET framework. But could be that I'm missing something.

Most likely I would need to create some dictionary to perform this mapping. Does anybody know some library/open-source project/xml feed/etc where I can find this mappings handy?

È stato utile?

Soluzione

Wikipedia also provides comparison table. You can easily convert this data into whatever format you want, considering it have stable format and is easily parsed.

Altri suggerimenti

I parsed wiki page and generated dictionary, which only contains data for mismatching pairs. For all other countries 3-letter code should be the same.

Here is source code (given "as-is"):

    // Defines mapping between ISO 3166-1 alpha-3 and Olympic IOC country codes
    // Only mismatches are defined
    // Taken from here: http://en.wikipedia.org/wiki/Comparison_of_IOC,_FIFA,_and_ISO_3166_country_codes    
    var dictionary = new Dictionary<string, string>();
    dictionary.Add("DZA", "ALG");
    dictionary.Add("ASM", "ASA");
    dictionary.Add("AGO", "ANG");
    dictionary.Add("ATG", "ANT");
    dictionary.Add("ABW", "ARU");
    dictionary.Add("BHS", "BAH");
    dictionary.Add("BHR", "BRN");
    dictionary.Add("BGD", "BAN");
    dictionary.Add("BRB", "BAR");
    dictionary.Add("BLZ", "BIZ");
    dictionary.Add("BMU", "BER");
    dictionary.Add("BTN", "BHU");
    dictionary.Add("BWA", "BOT");
    dictionary.Add("VGB", "IVB");
    dictionary.Add("BRN", "BRU");
    dictionary.Add("BGR", "BUL");
    dictionary.Add("BFA", "BUR");
    dictionary.Add("KHM", "CAM");
    dictionary.Add("CYM", "CAY");
    dictionary.Add("TCD", "CHA");
    dictionary.Add("CHL", "CHI");
    dictionary.Add("COG", "CGO");
    dictionary.Add("CRI", "CRC");
    dictionary.Add("HRV", "CRO");
    dictionary.Add("DNK", "DEN");
    dictionary.Add("SLV", "ESA");
    dictionary.Add("GNQ", "GEQ");
    dictionary.Add("FJI", "FIJ");
    dictionary.Add("GMB", "GAM");
    dictionary.Add("DEU", "GER");
    dictionary.Add("GRC", "GRE");
    dictionary.Add("GRD", "GRN");
    dictionary.Add("GTM", "GUA");
    dictionary.Add("GIN", "GUI");
    dictionary.Add("GNB", "GBS");
    dictionary.Add("HTI", "HAI");
    dictionary.Add("HND", "HON");
    dictionary.Add("IDN", "INA");
    dictionary.Add("IRN", "IRI");
    dictionary.Add("KWT", "KUW");
    dictionary.Add("LVA", "LAT");
    dictionary.Add("LBN", "LIB");
    dictionary.Add("LSO", "LES");
    dictionary.Add("LBY", "LBA");
    dictionary.Add("MDG", "MAD");
    dictionary.Add("MWI", "MAW");
    dictionary.Add("MYS", "MAS");
    dictionary.Add("MRT", "MTN");
    dictionary.Add("MUS", "MRI");
    dictionary.Add("MCO", "MON");
    dictionary.Add("MNG", "MGL");
    dictionary.Add("MMR", "MYA");
    dictionary.Add("NPL", "NEP");
    dictionary.Add("NLD", "NED");
    dictionary.Add("NIC", "NCA");
    dictionary.Add("NER", "NIG");
    dictionary.Add("NGA", "NGR");
    dictionary.Add("OMN", "OMA");
    dictionary.Add("PSE", "PLE");
    dictionary.Add("PRY", "PAR");
    dictionary.Add("PHL", "PHI");
    dictionary.Add("PRT", "POR");
    dictionary.Add("PRI", "PUR");
    dictionary.Add("KNA", "SKN");
    dictionary.Add("VCT", "VIN");
    dictionary.Add("WSM", "SAM");
    dictionary.Add("SAU", "KSA");
    dictionary.Add("SYC", "SEY");
    dictionary.Add("SGP", "SIN");
    dictionary.Add("SVN", "SLO");
    dictionary.Add("SLB", "SOL");
    dictionary.Add("ZAF", "RSA");
    dictionary.Add("LKA", "SRI");
    dictionary.Add("SDN", "SUD");
    dictionary.Add("CHE", "SUI");
    dictionary.Add("TWN", "TPE");
    dictionary.Add("TZA", "TAN");
    dictionary.Add("TGO", "TOG");
    dictionary.Add("TON", "TGA");
    dictionary.Add("TTO", "TRI");
    dictionary.Add("ARE", "UAE");
    dictionary.Add("VIR", "ISV");
    dictionary.Add("URY", "URU");
    dictionary.Add("VUT", "VAN");
    dictionary.Add("VNM", "VIE");
    dictionary.Add("ZMB", "ZAM");
    dictionary.Add("ZWE", "ZIM");

I don't know if one exists but it wouldn't be hard to create by just parsing the tables in your two links and matching up by country name. I bet that would get you 95%, while the rest could be done manually.

I would bet you'll spend more time trying to find a pre-built one versus building it yourself.

php Array with 3 letter ISO country codes

$Countries=array();

array_push($Countries,"ABW");
array_push($Countries,"AFG");
array_push($Countries,"AGO");
array_push($Countries,"AIA");
array_push($Countries,"ALA");
array_push($Countries,"ALB");
array_push($Countries,"AND");
array_push($Countries,"ARE");
array_push($Countries,"ARG");
array_push($Countries,"ARM");
array_push($Countries,"ASM");
array_push($Countries,"ATA");
array_push($Countries,"ATF");
array_push($Countries,"ATG");
array_push($Countries,"AUS");
array_push($Countries,"AUT");
array_push($Countries,"AZE");
array_push($Countries,"BDI");
array_push($Countries,"BEL");
array_push($Countries,"BEN");
array_push($Countries,"BES");
array_push($Countries,"BFA");
array_push($Countries,"BGD");
array_push($Countries,"BGR");
array_push($Countries,"BHR");
array_push($Countries,"BHS");
array_push($Countries,"BIH");
array_push($Countries,"BLM");
array_push($Countries,"BLR");
array_push($Countries,"BLZ");
array_push($Countries,"BMU");
array_push($Countries,"BOL");
array_push($Countries,"BRA");
array_push($Countries,"BRB");
array_push($Countries,"BRN");
array_push($Countries,"BTN");
array_push($Countries,"BVT");
array_push($Countries,"BWA");
array_push($Countries,"CAF");
array_push($Countries,"CAN");
array_push($Countries,"CCK");
array_push($Countries,"CHE");
array_push($Countries,"CHL");
array_push($Countries,"CHN");
array_push($Countries,"CIV");
array_push($Countries,"CMR");
array_push($Countries,"COD");
array_push($Countries,"COG");
array_push($Countries,"COK");
array_push($Countries,"COL");
array_push($Countries,"COM");
array_push($Countries,"CPV");
array_push($Countries,"CRI");
array_push($Countries,"CUB");
array_push($Countries,"CUW");
array_push($Countries,"CXR");
array_push($Countries,"CYM");
array_push($Countries,"CYP");
array_push($Countries,"CZE");
array_push($Countries,"DEU");
array_push($Countries,"DJI");
array_push($Countries,"DMA");
array_push($Countries,"DNK");
array_push($Countries,"DOM");
array_push($Countries,"DZA");
array_push($Countries,"ECU");
array_push($Countries,"EGY");
array_push($Countries,"ERI");
array_push($Countries,"ESH");
array_push($Countries,"ESP");
array_push($Countries,"EST");
array_push($Countries,"ETH");
array_push($Countries,"FIN");
array_push($Countries,"FJI");
array_push($Countries,"FLK");
array_push($Countries,"FRA");
array_push($Countries,"FRO");
array_push($Countries,"FSM");
array_push($Countries,"GAB");
array_push($Countries,"GBR");
array_push($Countries,"GEO");
array_push($Countries,"GGY");
array_push($Countries,"GHA");
array_push($Countries,"GIB");
array_push($Countries,"GIN");
array_push($Countries,"GLP");
array_push($Countries,"GMB");
array_push($Countries,"GNB");
array_push($Countries,"GNQ");
array_push($Countries,"GRC");
array_push($Countries,"GRD");
array_push($Countries,"GRL");
array_push($Countries,"GTM");
array_push($Countries,"GUF");
array_push($Countries,"GUM");
array_push($Countries,"GUY");
array_push($Countries,"HKG");
array_push($Countries,"HMD");
array_push($Countries,"HND");
array_push($Countries,"HRV");
array_push($Countries,"HTI");
array_push($Countries,"HUN");
array_push($Countries,"IDN");
array_push($Countries,"IMN");
array_push($Countries,"IND");
array_push($Countries,"IOT");
array_push($Countries,"IRL");
array_push($Countries,"IRN");
array_push($Countries,"IRQ");
array_push($Countries,"ISL");
array_push($Countries,"ISR");
array_push($Countries,"ITA");
array_push($Countries,"JAM");
array_push($Countries,"JEY");
array_push($Countries,"JOR");
array_push($Countries,"JPN");
array_push($Countries,"KAZ");
array_push($Countries,"KEN");
array_push($Countries,"KGZ");
array_push($Countries,"KHM");
array_push($Countries,"KIR");
array_push($Countries,"KNA");
array_push($Countries,"KOR");
array_push($Countries,"KWT");
array_push($Countries,"LAO");
array_push($Countries,"LBN");
array_push($Countries,"LBR");
array_push($Countries,"LBY");
array_push($Countries,"LCA");
array_push($Countries,"LIE");
array_push($Countries,"LKA");
array_push($Countries,"LSO");
array_push($Countries,"LTU");
array_push($Countries,"LUX");
array_push($Countries,"LVA");
array_push($Countries,"MAC");
array_push($Countries,"MAF");
array_push($Countries,"MAR");
array_push($Countries,"MCO");
array_push($Countries,"MDA");
array_push($Countries,"MDG");
array_push($Countries,"MDV");
array_push($Countries,"MEX");
array_push($Countries,"MHL");
array_push($Countries,"MKD");
array_push($Countries,"MLI");
array_push($Countries,"MLT");
array_push($Countries,"MMR");
array_push($Countries,"MNE");
array_push($Countries,"MNG");
array_push($Countries,"MNP");
array_push($Countries,"MOZ");
array_push($Countries,"MRT");
array_push($Countries,"MSR");
array_push($Countries,"MTQ");
array_push($Countries,"MUS");
array_push($Countries,"MWI");
array_push($Countries,"MYS");
array_push($Countries,"MYT");
array_push($Countries,"NAM");
array_push($Countries,"NCL");
array_push($Countries,"NER");
array_push($Countries,"NFK");
array_push($Countries,"NGA");
array_push($Countries,"NIC");
array_push($Countries,"NIU");
array_push($Countries,"NLD");
array_push($Countries,"NOR");
array_push($Countries,"NPL");
array_push($Countries,"NRU");
array_push($Countries,"NZL");
array_push($Countries,"OMN");
array_push($Countries,"PAK");
array_push($Countries,"PAN");
array_push($Countries,"PCN");
array_push($Countries,"PER");
array_push($Countries,"PHL");
array_push($Countries,"PLW");
array_push($Countries,"PNG");
array_push($Countries,"POL");
array_push($Countries,"PRI");
array_push($Countries,"PRK");
array_push($Countries,"PRT");
array_push($Countries,"PRY");
array_push($Countries,"PSE");
array_push($Countries,"PYF");
array_push($Countries,"QAT");
array_push($Countries,"REU");
array_push($Countries,"ROU");
array_push($Countries,"RUS");
array_push($Countries,"RWA");
array_push($Countries,"SAU");
array_push($Countries,"SDN");
array_push($Countries,"SEN");
array_push($Countries,"SGP");
array_push($Countries,"SGS");
array_push($Countries,"SHN");
array_push($Countries,"SJM");
array_push($Countries,"SLB");
array_push($Countries,"SLE");
array_push($Countries,"SLV");
array_push($Countries,"SMR");
array_push($Countries,"SOM");
array_push($Countries,"SPM");
array_push($Countries,"SRB");
array_push($Countries,"SSD");
array_push($Countries,"STP");
array_push($Countries,"SUR");
array_push($Countries,"SVK");
array_push($Countries,"SVN");
array_push($Countries,"SWE");
array_push($Countries,"SWZ");
array_push($Countries,"SXM");
array_push($Countries,"SYC");
array_push($Countries,"SYR");
array_push($Countries,"TCA");
array_push($Countries,"TCD");
array_push($Countries,"TGO");
array_push($Countries,"THA");
array_push($Countries,"TJK");
array_push($Countries,"TKL");
array_push($Countries,"TKM");
array_push($Countries,"TLS");
array_push($Countries,"TON");
array_push($Countries,"TTO");
array_push($Countries,"TUN");
array_push($Countries,"TUR");
array_push($Countries,"TUV");
array_push($Countries,"TWN");
array_push($Countries,"TZA");
array_push($Countries,"UGA");
array_push($Countries,"UKR");
array_push($Countries,"UMI");
array_push($Countries,"URY");
array_push($Countries,"USA");
array_push($Countries,"UZB");
array_push($Countries,"VAT");
array_push($Countries,"VCT");
array_push($Countries,"VEN");
array_push($Countries,"VGB");
array_push($Countries,"VIR");
array_push($Countries,"VNM");
array_push($Countries,"VUT");
array_push($Countries,"WLF");
array_push($Countries,"WSM");
array_push($Countries,"YEM");
array_push($Countries,"ZAF");
array_push($Countries,"ZMB");
array_push($Countries,"ZWE");
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top