我在jsp中填充了一个下拉列表框,其中的字符串包含\ u00e8等字符。我将使用下拉列表的选定值来过滤表中的显示,其中包含从DB检索的值。但是,当我通过request.getAttribute将它们发送回servlet时,其值已更改。我使用org.apache.commons.lang.StringEscapeUtils.escapeJava()并发现其值从\ u00e8更改为\ u00C3 \ u00A8。网页的内容类型为UTF-8。如何为HTML和Java提供一致的字符?
很抱歉,如果我无法发表评论,接受回答,投票评论,因为我的工作站中的javascript被禁用(这真的很糟糕)。我回家后会做的。感谢。
答案 0 :(得分:0)
这就是我在多部分文件上传时所做的。
List formItems = upload.parseRequest(request);
Iterator iter = formItems.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
String field = "";
String value = "";
if (item.isFormField()) {
try{
field=item.getFieldName();
value=item.getString("UTF-16");
}
catch(Exception e){
}
}