我将一些法语内容存储在数据库中,但转换为?
。
字符串:médiévaux, principalement pour l’anglais et le français
,转换为médiévaux, principalement pour l??anglais et le français
,
我已经将utf-8编码应用于jsp页面,也应用于servlet。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
和servlet
response.setCharacterEncoding("utf-8");
我也试过解码字符串
return (string != null) ? new String(string.getBytes(), UTF8_CHARSET) : null;
然后编码。
return (string != null) ? new String(string.getBytes(UTF8_CHARSET)) : null;
从JSP获取并在servlet中设置它的代码
response.setCharacterEncoding("utf-8");
String content = request.getParameter("inputFr");
if(content == null){
throw new Exception("exception");
}
content = new String(string.getBytes(), UTF8_CHARSET);
但仍然会在上面的内容字符串中出现问号。非常感谢任何帮助。
答案 0 :(得分:0)
问题是您在未编码的URL中发送参数。要编码它使用
URLEncoder.encode(content, "UTF-8");
。您可以在JSP中将其解码为
<%
out.println(java.net.URLDecoder.decode(((String[])request.getParameterMap().get("inputFr"))[0], "UTF-8"));
%>