2
給出該枚舉類型:枚舉特殊字符(德國元音)恆定
public enum PackageType {
BEHAELTER("BH", "Behälter")
String value;
String id;
String description;
PackageType(String id, String description) {
this.id = id;
this.description = description;
}
}
當與該枚舉工作時,元音變音的「A」Behälter示出錯誤的。即使當我在構造函數中調試並觀察屬性「描述」時,我發現它是錯誤的。
是否有Java規範禁止這樣的構造中的任何特殊字符?在這一點上我非常無能。
我注意到,當這個枚舉序列化爲JSON並將其返回到我的前端。
感謝
對不起,但我無法確認。我正在開發具有這種IDE設置的應用程序,因爲這些設置已經過時了,而且我從來沒有遇到過調試器或java文件的編碼問題。 我所有的java文件都是UTF-8,我的IDE知道它的UTF-8。 當我運行你的簡單程序時,調試器和命令行顯示正確的東西,即「ä」。 它不是一個「常規」問題,當然它與JSON無關,因爲在序列化發生之前字符串被「破壞」。 – Marc 2011-04-04 10:34:06
但現在在主要的方法中,我使用枚舉,那裏一切都很好。所以我需要重新檢查當前的商業案例,爲什麼它在那裏失敗。無論如何,你的答案可以幫助我。只要我檢查了一些東西,我會盡快進行推廣。 – Marc 2011-04-04 10:40:37
@馬克:你說「當然」,但我們不知道你已經試過了什麼。好吧,它聽起來好像不是編譯器......如果你在調試器的索引3處打印出字符,它顯示了什麼?你能給出一個類似的簡短但完整的程序來顯示它失敗嗎?如果您認爲它與JSON無關,那麼您不必擔心JSON方面的事情。當你說它「顯示錯誤」時,你看到了什麼*正確*。沒有更多信息很難幫助你。 – 2011-04-04 10:41:58