0

我试图猜测 BCP-47 代码属于哪个国家。我知道这将提供多个国家/地区的列表。尽管如此,我还是想试试。

是否可以使用 System.Globalization 中的任何类?

为什么这样做:在我的网站上,我想自动填写一个国家/地区。我首先尝试对 IP 地址进行地理定位。如果失败,我想尝试使用 navigator.language (JavaScript) 猜测国家。

这对于例如 nb (挪威 Bokmål - 理想情况下会产生挪威)失败:

var cultureInfo = new CultureInfo("nb");
var regionInfo = new RegionInfo(cultureInfo.LCID); // Throws because culture is not neutral

是否可以从 System.Globalization 聚合一些数据并在初始化时创建各种字典?

4

1 回答 1

0

不,我不认为 System.Globalization 会帮助你,你将无法轻松地做你想做的事。

我建议将这张表从这篇维基百科文章中拉出来: https ://en.wikipedia.org/wiki/List_of_official_languages_by_country_and_territory

将其粘贴在 csv 中,将其加载并在整个国家/地区代码集上执行 foreach,根据 CultureInfo() 对象中的信息将它们映射到您的 csv 中。

最终,您应该能够为您拥有的每个代码建立一个国家列表。您可能无法全部获得它们,但您可能会获得不错的报道,并且要弄清楚一些令人头疼的问题。

我没有看过,但如果你想要的东西已经放在某个地方的某个 nuget 包中,我不会感到惊讶。

于 2022-02-04T16:59:24.997 回答