对与英文或者数字的文件名可以实现正常下载,但是对与中文的却不能正常显示,
俺用toutf8string这个方法将中文转换文件名也不能显示,请高手支招!!!!!!!!
public static String toutf8string(String s) 
{
         StringBuffer sPage = new StringBuffer();
for (int i=0;i<s.length();i++) 
{
char c = s.charAt(i);
if (c >= 0 && c <= 255) 
{
sPage.append(c);

else 
{
byte[] b;
Character aaa = new Character(c);
try 
{
b = aaa.toString().getBytes("UTF-8");

catch (Exception ex) 
{
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) 
{
int k = b[j];
if (k < 0) k += 256;
sPage.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
return sPage.toString();
}

解决方案 »

  1.   

    JSP中get方法中的中文是乱码。不知道其他的咋解决。
    Tomcat可以这样
    可以修改tomcat/conf/server.xml里的
        <Connector port="8080"
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" redirectPort="8443" acceptCount="100"
                   debug="0" connectionTimeout="20000" 
                   disableUploadTimeout="true" URIEncoding="GBK"/>
      

  2.   

    根据楼上的 默认的是Utf-8 添加URIEncoding="GBK" 或者其他相应的应该可行