【发布时间】:2014-03-14 06:52:03
【问题描述】:
在 JSP 文件中,有一个列(xpaths), 我想我输入(并且我想)这个:
"/breakfast_menu/food/name[text()="Belgian Waffles"]"
但结果是这样的:
/breakfast_menu/food/name[text()="Belgian Waffles”]
当我在 doPost 中得到这个参数时 使用此代码:
String xpaths = URLDecoder.decode(request.getParameter("xpaths"),"UTF-8");
我明白了:
/breakfast_menu/food/name[text()="Belgian Wafflesâ]
我的代码有什么问题?我该如何解决这个问题?
编辑: 这是我的 JSP 文件
<!doctype html>
<html>
<form method="post" action="/ServletSuite/servlet/XPathServlet">
URL: <input type="text" name="URL">
XPaths: <input type="text" name="xpaths"><br>
*separate multiple XPaths with ';'<br>
<input type="submit" name="send">
</form>
</html>
【问题讨论】:
-
也许你应该发布真实的代码。但很明显,正在发生的事情是一个卷曲的引号正在变成一个无意义的字符。但是弯引号是从哪里来的呢?
-
@developerwjk 我添加了我的jsp文件代码..你能发现哪里不对吗?
-
这可能就像你说的,输入错误。您是否在将输入内容粘贴到表单之前在 Word 中输入? Word 和类似应用程序会导致您的引号转换为弯引号。
-
您也不需要 URLDecoder.decode 围绕 getParameter。 getParameter 已经这样做了。
-
@developerwjk 我在输入字段中输入这个。具有讽刺意味的是,如果我在其他地方输入并粘贴,那么它不会有这个问题