Delphi 如果区域设置没有代码页,如何检测区域设置/语言?

Delphi 如果区域设置没有代码页,如何检测区域设置/语言?,delphi,unicode,Delphi,Unicode,我需要从unicode宽字符串中检测语言。我已经尝试过使用iMultiLang2接口,如果语言环境有代码页,它就会正常工作。某些地区/语言没有代码页,仅映射到unicode。我怎样才能得到这些的lcid?格鲁吉亚语、印地语和许多其他语言没有代码页,只是unicode排序规则 我使用的是Delphi7 Enterprise 非常感谢您的帮助 问候我通常不会给出这种回答,但无论如何你不会!。这是一项你无法真正解决的任务。在很多情况下,您无法确定语言 顺便说一句,我在Google Translator

我需要从unicode宽字符串中检测语言。我已经尝试过使用iMultiLang2接口,如果语言环境有代码页,它就会正常工作。某些地区/语言没有代码页,仅映射到unicode。我怎样才能得到这些的lcid?格鲁吉亚语、印地语和许多其他语言没有代码页,只是unicode排序规则

我使用的是Delphi7 Enterprise

非常感谢您的帮助


问候

我通常不会给出这种回答,但无论如何你不会!。这是一项你无法真正解决的任务。在很多情况下,您无法确定语言


顺便说一句,我在Google Translator上观察到的唯一一个这样的功能是,我只在文本长度相当大的情况下才工作,即使这样也没有保证。

我通常不会给出这种答案,但无论如何你不会!。这是一项你无法真正解决的任务。在很多情况下,您无法确定语言


顺便说一句,我在Google Translator上观察到的唯一一个这样的功能是,我只在文本长度相当大的情况下才工作,即使如此也无法保证。

这个问题是基于对unicode的误解。Unicode是表示书写系统的一种方式,而不是表示语言。假设一个unicode字符串由三个代码点U+0073、U+0069和U+006e组成,即sin。是英语吗?这是西班牙语中“没有”的意思吗?这是几种斯堪的纳维亚语言中的一种吗?谁知道呢

你提到了格鲁吉亚语和印地语。格鲁吉亚文字ქართული დამწერლობა 当然,可以用来表示格鲁吉亚语,但也可以表示明格里安语、斯万语和其他一些更为罕见的语言。没有印地语,就像没有英文字母一样。由于英语是用我们从讲拉丁语的祖先那里继承下来的拉丁字母书写的,印地语是用德凡加罗书写的देवनागरी, 一个美丽的脚本,也用于古代梵语、现代马拉地语、尼泊尔语和几十种其他语言。别让我开始学中文


如果你被逼迫,不得不接受一个近似的解决方案,你可以进行近似:因为这个字符来自德瓦那加ī范围U+0900–U+097F或格鲁吉亚范围U+10A0–U+10FC和U+2D00–U+2D25,我假设它可能是印地语或格鲁吉亚语。这样的方法容易出错,而且含糊不清,但您可以从范围表开始。

这个问题是基于对unicode的误解。Unicode是表示书写系统的一种方式,而不是表示语言。假设一个unicode字符串由三个代码点U+0073、U+0069和U+006e组成,即sin。是英语吗?这是西班牙语中“没有”的意思吗?这是几种斯堪的纳维亚语言中的一种吗?谁知道呢

你提到了格鲁吉亚语和印地语。格鲁吉亚文字ქართული დამწერლობა 当然,可以用来表示格鲁吉亚语,但也可以表示明格里安语、斯万语和其他一些更为罕见的语言。没有印地语,就像没有英文字母一样。由于英语是用我们从讲拉丁语的祖先那里继承下来的拉丁字母书写的,印地语是用德凡加罗书写的देवनागरी, 一个美丽的脚本,也用于古代梵语、现代马拉地语、尼泊尔语和几十种其他语言。别让我开始学中文


如果你被逼迫,不得不接受一个近似的解决方案,你可以进行近似:因为这个字符来自德瓦那加ī范围U+0900–U+097F或格鲁吉亚范围U+10A0–U+10FC和U+2D00–U+2D25,我假设它可能是印地语或格鲁吉亚语。这种方法很容易出错,也很模糊,但您可以从范围表开始。

谢谢。这也是我的想法。我想知道是否有其他方法,因为这种方法很容易出错。谢谢。这也是我的想法。我想知道是否有其他方法,因为这种方法很容易出错。谢谢,看看下面的回复,你是对的。顺便说一句,我想必应也是这样。谢谢,看看下面的回复,你是对的。顺便说一句,我认为必应也这样做。