这个字符串的国际charcode值是多少?

时间:2014-06-26 14:34:59

标签: character-encoding dart dart-html

我有一个字符串<...>(小于; 3x全停;大于),我需要将其转换为其charcode值,以检查用户是否按下指定的三个键键盘上的顺序(看字符串)(想象像konami代码)。如何获取此字符串的charcode值?

我尝试了一些组合,但它只适用于英文键盘布局。它没有使用其他键盘布局(如捷克语,意大利语,德语)。是否有任何好的解决方案不依赖于键盘布局和键盘快捷键,而只取决于键入的字母?

2 个答案:

答案 0 :(得分:1)

也许你正在寻找像

这样的东西
void main() {
  '<...>'.codeUnits.forEach(print);
}
  

60   46   46   46   62

void main() {
  String s = '<...>';
  print(s.codeUnitAt(0));
  print(s.codeUnitAt(1));
  ...
}

产生相同的输出。

如果这不是您想要的,改善您的问题可能有所帮助。

答案 1 :(得分:1)

很容易获得五个字符的字符代码:"<...>".codeUnits.toList()。 如果你想要它,那就是[60,46,46,46,62]。

您的问题似乎是要检测与键盘上按相对应的键盘代码

我假设我们处于浏览器设置中。在这种情况下,键盘事件将包含charCode,这应该是您需要的。即使在国外(从任何地方)键盘,charCode应该是正确的 - 除非浏览器完全误解键盘,然后用户将有更大的问题。

https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart-dom-html.KeyboardEvent#id_charCode