2013-03-28 65 views
0

在我的UIView類之一中,我附加了UIKeyInput協議來收集來自UIKeyboard的輸入。我試圖找出當按下空格按鈕時使用了什麼ascii字符(這不僅僅是「它是別的東西出現)」。有誰知道這個ASCII字符是什麼,或者我怎麼知道什麼是ASCII碼被使用?在NSString中確定ascii字符

+1

ASCII空格爲''''或0x20(十進制32)。 – 2013-03-28 23:18:37

+1

你不應該在尋找ASCII字符。用戶在iOS中鍵入Unicode字符。當然,ASCII值0-127與Unicode字符\ U0000 - \ U007F相同。 – rmaddy

+0

你真的想完成什麼? – uchuugaka

回答

1

要看看你可以做這樣的事情每個字符值:

NSString *text = ... // the text to examine 
for (NSUInteger c = 0; c < text.length; c++) { 
    unichar char = [text characterAtIndex:c]; 
    NSLog(@"char = %x", (int)char); // Log the hex value of the Unicode character 
} 

請注意,此代碼不能正確處理範圍\ U10000及的任何Unicode字符。這包括許多(所有?)表情符號字符。

1

如果你真的需要知道哪些字符(或代碼點)實際上是,使用CFMutableString功能CFStringTransform() 這使您可以使用轉換參數kCFStringTransformToUnicodeName到例如獲得人類可讀的Unicode名稱或Hex-Any得到逃脫了Unicode代碼點。

否則,你可以做的unichar方法來簡單的獲取代碼點。

+0

謝謝你那種先生。 –