0

假设非英语用户键入 Namaste Duniya。我需要用印地语显示नमस्ते दुनिया。如果我有 नमस्ते दुनिया 存储在变量中,那么我如何获取用户通过键盘输入的单词并以 unicode 显示它们。就像在这个例子中,namaste Duniya 被输入以显示他们 नमस्ते दुनिया。

所以我的问题是我可以转换字符以匹配他们(用户)在键盘上输入的单词吗?我如何在 c# 或任何其他语言(如 javascript)中做到这一点?

4

2 回答 2

0

这个似乎处理你的文本

http://pinyin.info/tools/converter/chars2uninumbers.html

नमस्ते दुनिया 成为नमस्ते दुनिया

使用的代码非常简单:

  var iString = "नमस्ते दुनिया", oString ="";
  for (var i=0; i<iString.length; i++) {
    oString += (iString.charCodeAt(i)<=127)? iString.charAt(i) : '&#' + iString.charCodeAt(i) + ';': 
  }

更新:

如果我理解问题的新文本,那么类似

var translateLatin2Hindi = { 
"Namaste Duniya":"नमस्ते दुनिया",
,
,

"Duniya Namaste":"दुनिया नमस्ते"
}

var translateHindi2Latin = {}
for (var o in translateLatin2Hindi) {
  translateHindi2Latin[translateLatin2Hindi[o]]=o;
}

然后可以用作

function getHindi(latinString) {
  var val = translateLatin2Hindi[latinString];
  return (val)?val:"Not found";
}    
function getLatin(hindiString) {
  var val = translateHindi2Latin[hindiString];
  return (val)?val:"Not found";
}
于 2011-03-14T07:00:37.433 回答
0

原来的问题是

就像印地语中的 Hello wolrd 一样,它是 नमस्ते दुनिया 并且用户在键盘中键入它是

合十杜尼亚

当我有文字नमस्ते दुनिया时,如何让他们合十

所以我猜这个问题要么是关于印地语的音译,要么是关于将输出(Unicode)字符映射到键盘上的键序列。

(只是对那些精通印地语键盘映射的人的提示)

于 2011-03-14T07:13:03.170 回答