【发布时间】:2016-05-20 06:15:31
【问题描述】:
你好,智能社区,
我已经围绕这个问题进行了一些研究,但似乎无法找到我确切问题的答案
我正面临一个奇怪的编译时问题,其中包含 unicode 转义码的 Java 字符串文字。
这里是正在考虑的代码sn-p:
String text = textArea.getText().trim();
String unicodeReturn = "\u000A";
text =
"\"" +
text
.replace(" ", "%s")
.replace("\\", "\\\\")
.replace("\"", "\\\"")
.replace("\n", "\u000A")
+
"\"";
我收到编译时错误 “字符串文字没有被双引号正确关闭” 用于该行
String unicodeReturn = "\u000A";
奇怪的是,这条线
.replace("\n", "\u000A")
如果存在相同的 unicode 文字,似乎不会导致任何问题。我已经使用 unicode 符号语法有一段时间了。如果我没有记错的话,格式是 \uXXXX,其中 X 是一个十六进制数字。
我的环境是
- JDK 1.8.0_66
- MACOSX El Capitan
- Eclipse Mars.1
我的问题是:
- 有人遇到过同样的问题吗?
- 这是一个已知的 JDK 1.8 编译器错误吗?
- 对此有解决方案或变通方法吗?
- 有谁知道我做错了什么?
(这很令人沮丧,让我无法编译我的代码)
【问题讨论】:
标签: java unicode unicode-escapes