2012-12-03 64 views
-1

我需要這樣做:無效字符常量

if(']' == body.charAt(body.length()-1) || '錛� == body.charAt(body.length()-1) || '銆� == body.charAt(body.length()-1)){ 
    score++; 
} 

我也得到一個錯誤,指出:無效字符常量

爲什麼?我怎樣才能克服它?

非常感謝提前。

+0

這是一個真正的問題 - 無需投票關閉。對於明確的Unicode代碼點,它有一個真正有價值的答案 –

回答

3

看着你的源代碼,它好像是Java。 此外,這似乎破壞:

'錛� == body.charAt(body.length()-1) 

,而且也應該閱讀

'錛' == body.charAt(body.length()-1) 

考慮到這一點,你有兩個選擇:

  1. 確保你的源代碼被保存作爲UTF-8。有幾種方法來檢查這一點,在Windows上,我會推薦使用Notepad ++,並選擇另存爲UTF-8,而不使用BOM選項。

  2. 對於非ASCII常量使用\uHHHH語法。據我所知,你的性格錛應編碼爲U+951B,所以你可以用這個來代替: '\U951B' == body.charAt(body.length()-1)

+0

+1。如果您將非ANSI字符剪切並粘貼到許多編輯工具中,它們通常會被破壞 –

+0

嗨,mvp。感謝您的回覆。我已經使用Notepad ++的方法更正了我的代碼。謝謝! – user1871673

+1

歡迎來到Stackoverflow!如果你喜歡答案,或者他們解決了你的問題,你應該加註和/或接受它們。這是這個網站的工作原理 – mvp