我正在尝试执行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);
我无法编译项目,因为我得到了params的语法错误:
错误:(144,9)错误:非法字符:&#39; \ u2028&#39;
我该如何解决?
答案 0 :(得分:37)
这是新行字符,如果您转到导致错误的每一行并删除“隐藏”的最后一个字符,则错误将解决
对于每个有非法字符错误的行,转到导致错误的行的末尾并按一次后退空格。
答案 1 :(得分:15)
如果你是mac用户,那么你可以
在TextWrangler中复制并粘贴文本 查看 - &gt;文字显示 - &gt;显示隐形
它会显示符号“|”。删除它,你很高兴。
答案 2 :(得分:10)
好吧,只需删除所有字符并重新编写它们就可以了。太疯狂..
答案 3 :(得分:6)
答案 4 :(得分:4)
将代码剪切并粘贴到文本编辑器中,将其转换为简单文本。然后删除所有额外的空格。之后,使用Android Studio的重新格式化代码功能使其再次变得漂亮。
对我来说,只删除Android Studio中的空格不起作用。
答案 5 :(得分:1)
我遇到了完全相同的问题,但就我而言,错误的数量非常大(95左右)。唯一理智的做法是用空字符替换这些字符。这个简短的Python脚本会这样做并打印出您文件的新内容。使用正确的文件路径运行它。干杯。
with open(‘filename.java’, ‘r’) as file:
data=(file.read().decode(“utf-8”)).replace(u’\u2028', ‘’).encode(“utf-8”)
print data