我的代码如下:
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException ,ServletException
{

Enumeration paramNames = request.getParameterNames();
PrintWriter out = response.getWriter();
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
String docType="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n";
String title ="读取所有参数";
out.println(docType + 
"<HTML> \n" +
"<HEAD>"+
"<TITLE>" + title + "</TITLE></HEAD>\n" +
"<BODY BGCOLOR =\"#FDF5E6\"> \n" + 
"<H1 ALIGN =CENTER>" + title + "</H1> \n" + 
"<TABLE BORDER = 1 ALIGN = CENTER> \n" +
"<TR BGCOLOR =\"#FFAD00\"> \n" + 
"<TH>Parameter Name<TH>Paramete Value(s)");
while (paramNames.hasMoreElements())
{
String paramName = (String) paramNames.nextElement();
out.print("<TR><TD>"+ paramName + "\n<TD>");
String[] paramValues = request.getParameterValues(paramName); if (paramValues.length ==1)
{
String paramValue = paramValues[0];
if (paramValue.length()==0)
out.println("<I>No Value</I>");
else
out.println(paramValue);
}else
{
out.println("<UL>");
for (int i=0;i<paramValues.length ;i++ )
{
out.println("<LI>" + paramValues[i]);
}
out.println("</UL>");
}
}
out.println("</TABLE>\n</BODY></HTML>");
}

解决方案 »

  1.   

    显示的结果如下:
            ??????
    Parameter Name Paramete Value(s)  
    address   
    initial  No Value  
    lastName  No Value  
    price  $  
    description  No Value  
    ItemNum  No Value  
    cardNUM  No Value  标题乱码.
    在firefox 里面查看页面信息 编码:ISO-8859-1
    请问是什么问题?
      

  2.   

    我用的编译命令如下:
    javac -encoding utf-8 ShowParameters.java
      

  3.   

    可是IBM网站上一篇文章说这种方法可以啊。
      

  4.   

    JSP:
    <%@ page contentType="text/html;charset=GB2312"%>
    Servlet:
    //  =====以下2句不确定作用啦,也写上吧=====//
      private static final String CONTENT_TYPE = "text/html;charset=GBK";
      response.setContentType(CONTENT_TYPE);然后写以下一种方法,个人比较喜欢第一种
    //  =====解决汉字显示问题的方法1=====//
        request.setCharacterEncoding("GBK");
    //  =====解决汉字显示问题的方法2=====//
    // String str=new String(fruitList[i].getBytes("ISO-8859-1"));
    // out.println(str+"<br>");