做下内码转换啊
import java.io.*;public class StringConverter {
  public StringConverter() {
  }  public static String convert(String s){
  byte[] tmpbyte = null;
  try {
    tmpbyte = s.getBytes("ISO8859_1");
  }
  catch (UnsupportedEncodingException ex) {
    ex.printStackTrace();
  }
   String ret=new String(tmpbyte);
   return ret;
 }
}

解决方案 »

  1.   

    String newfilename = new String(oldfilename.getBytes("iso-8859-1"), "utf-8");
      

  2.   

    如果需要从用户端接收用户的可能含有中文的输入或含有中文的输出,程序中应该采用字符流来处理输入和输出,具体来说,应用以下面向字符型节点流类型:
        对文件:FileReader,FileWrieter 
            其字节型节点流类型为:FileInputStream,FileOutputStream
        对内存(数组):CharArrayReader,CharArrayWriter
            其字节型节点流类型为:ByteArrayInputStream,ByteArrayOutputStream
        对内存(字符串):StringReader,StringWriter
        对管道:PipedReader,PipedWriter
            其字节型节点流类型为:PipedInputStream,PipedOutputStream
        同时,应该用以下面向字符型处理流来处理输入和输出:
        BufferedWriter,BufferedReader
            其字节型的处理流为:BufferedInputeStream,BufferedOutputStream
        InputStreamReader,OutputStreamWriter
        其字节型的处理流为:DataInputStream,DataOutputStream
        其中InputStreamReader和InputStreamWriter用于将字节流按照指定的字符编码集转换到字符流,如:
        InputStreamReader in = new InputStreamReader(System.in,"GB2312");
        OutputStreamWriter out = new OutputStreamWriter (System.out,"GB2312");http://www.pconline.com.cn/pcedu/empolder/gj/java/0405/368760.html
      

  3.   

    <%@ page contentType="text/html; charset=utf-8" %>
    <%
    String filename= new String (request.getParameter("filename").getBytes("ISO-8859-1"),"GB2312");%><%response.sendRedirect("/upload1/"+newfilename);%>newfilenamen是乱码怎么解决呀
      

  4.   

    我是想用浏览器直接打开response.sendRedirect("/upload1/"+newfilename);%>
    newsfilename,不能打开的就下载,可是文件名是中文就不行,出现了乱码
    请问怎么解决呀
      

  5.   

    newfilename怎么编码都没有用的,是http不认中文路径,要在服务器的配置里改。
      

  6.   

    找段代码给你,自己参考吧
    <%@page contentType="text/html; charset=gb2312"%>
    <%
    String sre = null;
    String uid=null;  uid = (String) session.getValue("userid");
      if(uid==null)
      {
         sre = "您还没有登录";
         System.out.println(sre);
         session.putValue("result",sre);
         getServletConfig().getServletContext().getRequestDispatcher("/PBResult.jsp").forward(request,response);
         return;
      }
    %>
    <%@ page language="java" import="com.jspsmart.upload.*,java.sql.*,java.util.*,java.io.* "%> 
    <%-- 使用SmartUpload Java Bean --%> 
    <jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" /> 
    <% 
    request.setCharacterEncoding("GB2312");
    String downpath=request.getParameter("path");
    System.out.println("down file:"+downpath);  java.io.File file=new java.io.File(downpath);
      if(!file.exists()) {
         sre = "下载文件不存在!";
         System.out.println(sre);
         session.putValue("result",sre);
         getServletConfig().getServletContext().getRequestDispatcher("/ReMess.jsp").forward(request,response);
         return;
      }
      
      out.clear();
      response.setContentType("application/octet-stream");
      response.setHeader("Content-disposition","attachment; filename="+new String(file.getName().getBytes("GBK"),"ISO8859_1"));
      //response.setHeader("Content-disposition",Util.Encode("attachment; filename="+file.getName()));
      DataInputStream dis=new DataInputStream(new FileInputStream(file));
      OutputStream os=response.getOutputStream(); try{
      byte[] buf=new byte[1024];
      int left=(int)file.length();
      int read=0;
      while(left>0)
      {read=dis.read(buf);
       left-=read;
       os.write(buf,0,read);
      }
      }
      catch(Exception e)
      {
         sre = "文件下载失败!";
         System.out.println(sre+e.getMessage());
         session.putValue("result",sre);
         getServletConfig().getServletContext().getRequestDispatcher("/ReMess.jsp").forward(request,response);
         dis.close();
         os.close();
         out.close();
         return;  
      }
      sre = "文件下载成功!";
      System.out.println(sre);
      dis.close();
      os.close();
      out.close(); 
      return; /*
    //进行初始化操作 
    mySmartUpload.init(config);
    mySmartUpload.service(request,response); 
    //设定contentDisposition为null以禁止浏览器自动打开文件,
    //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为
    //doc时,浏览器将自动用word打开它。扩展名为pdf时,
    //浏览器将用acrobat打开。mySmartUpload.setContentDisposition(null);//进行下载操作
    try{ 
    mySmartUpload.downloadFile(downpath); 

    catch(Exception e){ 
         sre = "文件下载失败!";
         System.out.println(sre+e.getMessage());
         session.putValue("result",sre);
         getServletConfig().getServletContext().getRequestDispatcher("/ReMess.jsp").forward(request,response);
         return;

         sre = "文件下载成功!";
         System.out.println(sre);
         session.putValue("result",sre);
         getServletConfig().getServletContext().getRequestDispatcher("/ReMess.jsp").forward(request,response);
         return;
    */
    %>
      

  7.   

    使用java.net.URLEncoder.encode()将中文转一下格式试试。