我已经下载了apache lang源代码,但我的netbeans编码是UTF-8,我发错了:
\src\org\apache\commons\lang\Entities.java:64: error: unmappable character for encoding UTF-8
{"copy", "169"}, // ? - copyright sign
我该如何解决这个问题?
我已尝试通过记事本++将文件编码为utf-8,但它没有帮助
答案 0 :(得分:1)
尝试使用unicode符号:" \ u00a9"。
您不应该直接在代码中使用特殊字符,而是使用专用的代码来避免此类问题。
编辑:使用您在评论中提到的课程,您可以使用
StringEscapeUtils.escapeHtml(yourCharacter);
这将使您的角色(在您的案件中为版权)返回为html代码(©
)。如果您想进行逆向治疗,可以使用
StringEscapeUtils.unescapeHtml(yourCode);
如果您将©
作为参数传递,则会返回版权符号。
答案 1 :(得分:0)
netbeans IDE有两种解决方案
1.右键单击apache lang源项目并选择
->Properties
->Sources
->Bottom left click the encoding drop down list and select ISO 8859-1
2。删除以下类
org.apache.commons.lang.Entity
org.apache.commons.lang.StringEscapeUtils
请记住,如果您决定使用第一个解决方案,那么这将更改项目的编码。 如果您想将项目编码维护为默认的UTF-8,那么请使用第二种解决方案,但这意味着您将失去StringEscapeUtil功能。