急!!!急!!!急!!!KeyPressEventArgs的KeyChar
问题一:例:
n = -10544; (中)
byte[] t = new byte[]{(byte)(n>>8),(byte)(n & 0xff)};
Console.WriteLine(Encoding.Default.GetString(t));
在这个例子中 (n >> 8) (n & 0xff) 分别代表什么意思
为什么byte[] t = {214,208}?
问题二:
例:
当输入'中'字时,KeyPressEventArgs 中 e.KeyChar = 20013'中',为什么要设置为-10544(如问题一的例子)? --------------------编程问答-------------------- 只知道n>>8应该是代表右移的吧
其他的关注中 --------------------编程问答-------------------- e.KeyChar类型char, UTF-16,
new byte[]{(byte)(n>>8),(byte)(n & 0xff)} 操作将其分解为两个字节.
Encoding.Default.GetString(t)使用系统默认字符集进行解码.
按例子, -10544应该是系统默认编码的'中', 但这么做看不出来有什么意义. --------------------编程问答--------------------
那应该怎么做呢???
--------------------编程问答-------------------- 是不是都要减去 30557呢???!!! --------------------编程问答-------------------- 直接Console.WriteLine(e.KeyChar)就行了
补充:.NET技术 , C#