我有一個特定字符'š',我需要它在wchar_t類型中的表示形式,表示一個UTF-16 Unicode字符,所以我可以將它作爲wParam和WM_CHAR消息發送給Winapi SendMessage函數。這個字符的兩個字節表示是字節[] {97,1}將特定字符轉換爲int
我需要的int是154.但是對於下面的代碼,我總是得到353.任何想法如何獲得154而不是353?
char ch = 'š';
byte[] charByte = Encoding.Unicode.GetBytes(ch); // reults in byte[] { 97, 1 }
int charInt = BitConverter.ToInt32(charCode, 0); // results in 353, but 154 is correct
'(int)'š''似乎也返回353。所以'(int)char.ConvertFromUtf32((int)'''[0]'。不完全確定如何,爲什麼和你想要完成什麼。你是否嘗試過使用'353'並看看你會得到什麼?可能工作。 – devRicher
爲什麼它應該返回154? – CodingYoshi
使用'Encoding'和'BitConverter'也會返回353.爲什麼你需要特別的154? – Abion47