Есть ли способ найти континент страны в C#, используя класс RegionInfo
или любым другим способом?Получить континент страны в C#
Например, вы указываете название страны «Дания», и оно возвращает «Европа».
Есть ли способ найти континент страны в C#, используя класс RegionInfo
или любым другим способом?Получить континент страны в C#
Например, вы указываете название страны «Дания», и оно возвращает «Европа».
Вы можете сохранить hash table. В записях будет указано имя страны и значение имени континента. Просто создайте эту таблицу из какой-либо общей базы данных, и как только вы ее получите, вы можете просто запросить ее. Это тоже довольно быстро.
http://www.geonames.org/countries/
Вы можете получить оттуда базы данных (есть опция для загрузки/экспорт)
Ничего подобного, что в рамках .NET. Это также довольно неоднозначно с географическими определениями для Евразии и Океании. Используются 6 distinct definitions. Вам понадобится ваша собственная база данных.
Есть только несколько континентов и всего лишь несколько сотен стран, поэтому было бы нелегко просто построить собственный стол. Существуют расхождения во мнениях относительно того, что представляют собой континенты (Австралия/Океания/Австралазия/Азия, в частности, колючая порой) и, например, Турция и Россия находятся в Европе, Азии или и то, и другое. Тем не менее, прокат собственных, по крайней мере, позволяет вам сделать свой собственный вызов по этим вопросам.
+1 И для дальнейшего усложнения вопросов существуют разные мнения о том, что * страны * квалифицируются как страны. Человек, геополитика - это сложно! –
@ Коды, мы часто можем просто переходить к списку кодов ISO для имен и оставлять только те имена, на которые ссылаются другие, о которых следует спорить. Тем не менее, мне пришлось несколько раз создавать системы, которые бы сочетали разные схемы других систем, и нет идеального решения, но тогда это разногласия, которые часто приводят к конфликтам войн и партизан, поэтому ни один программист не может рассчитывать на их решение , –
Я, конечно же, не предполагал, что любой программист может решить все проблемы! Однако предложение использовать список ISO является хорошим. –
РегионInfo не хранит континент. Но вы можете построить базу данных, используя GeoNames.org Country Information. Формат данных представляет собой текст с табуляцией в кодировке utf8. У него есть вся информация и многое другое, что вам нужно.
Вы можете использовать http://products.wolframalpha.com/api/
http://www.wolframalpha.com/input/?i=continent+THECOUNTRY
http://www.wolframalpha.com/input/?i=continent+sweden
Что это связано с C# или .NET? –
Я не знаю, понравится ли WA приложение, использующее свой веб-сайт в качестве веб-службы, для проблемы, которая может быть решена через пару часов работы. – Will
Я согласен с частью хэш-таблицы, но из которого общедоступную базу данных я заполнить его? Вы знаете какой-либо веб-сервис, который я могу использовать или что-то еще? –
Это не так уж и важно, чтобы не делать это вручную, я думаю. Используя что-то вроде этого, возможно: http://www.geonames.org/countries/ –
2002 позвонил и хочет вернуть свои нетипизированные коллекции. –