Android Studio:error: illegal character: '\u2028'

Android Studio:error: illegal character: '\u2028'

我正在尝试执行 JSONObject 请求:

final String URL = "https://some/url";

// Post params to be sent to the server
HashMap<String, String> params = new HashMap<String, String>();
params.put("param1", param1);

params.put("param2", param2);

params.put("param3", param3);
    
params.put("param4", param4);


JsonObjectRequest req = new JsonObjectRequest(URL, new JSONObject(params), new Response.Listener<JSONObject>() {
    @Override
    public void onResponse(JSONObject response) {
        try {
            VolleyLog.v("Response:%n %s", "läuft");
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }
}, new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
        VolleyLog.e("Error: ", error.getMessage());
    }
});

// add the request object to the queue to be executed
NetworkController.getInstance().addToRequestQueue(req);

我无法编译该项目,因为我收到参数的语法错误:

Error:(144, 9) error: illegal character: '\u2028'

我该如何解决?

好吧,删除所有字符并重新重写它们很有帮助。太疯狂了..

我遇到了完全相同的问题,但就我而言,错误数量相当大(95 左右)。唯一明智的做法是用空字符替换这些字符。这个简短的 Python 脚本会执行此操作并打印出文件的新内容。 运行 它与您的文件的正确路径。干杯。

with open(‘filename.java’, ‘r’) as file:
    data=(file.read().decode(“utf-8”)).replace(u’\u2028', ‘’).encode(“utf-8”)
    print data

这是换行符,如果您转到导致错误的每一行并删除 'invisible' 最后一个字符,那么错误将解决

转到导致错误的行的末尾,并为每行都有非法字符错误按一次退格键。

将代码剪切并粘贴到文本编辑器中以将其转换为简单文本。然后删除所有多余的空格。之后,使用 Android Studio 的 重新格式化代码 功能使其再次美观。

对我来说,只删除 Android Studio 中的空格是行不通的。

如果您是 mac 用户,那么您可以

在 TextWrangler 中复制和粘贴文本 查看 -> 文本显示 -> 显示隐形

它会显示像“|”这样的符号。删除它就可以了。

最好使用 Android Studio 的替换功能,将空字符串放入 "Replace with":