当前位置: 代码迷 >> Java Web开发 >> java处理文件名的问题
  详细解决方案

java处理文件名的问题

热度:346   发布时间:2007-11-02 09:09:25.0
java处理文件名的问题
写了一段程序,上传下载的
在下载的时候
如果我的文件名
为Acura 2.3 CL 1998 01.emf
取出来的过程中,我加入了一段处理中文名的
filename = java.net.URLEncoder.encode(filename, "UTF-8");
filename = new String(filename.getBytes("UTF-8"), "GBK");
然后名字就被变为
Acura+2.3+CL+1998+01.emf
这样的问题应该如何解决?
搜索更多相关主题的帖子: java  文件名  

----------------解决方案--------------------------------------------------------
filename = java.net.URLEncoder.encode(filename, "UTF-8");
filename = new String(filename.getBytes("UTF-8"), "GBK");
然后名字就被变为
Acura+2.3+CL+1998+01.emf

java.net.URLEncoder.encode是url编码的,不知道你的意思是做什么
其实下载时应该可以这样处理
filename = java.net.URLEncoder.encode(filename);因为string本身就是utf-8
//filename = new String(filename.getBytes("UTF-8"), "GBK");这里可以不要了
经过了encode已经可以在客户端ie正确识别了

----------------解决方案--------------------------------------------------------

我这个是处理文件名中带有中文信息的情况的


----------------解决方案--------------------------------------------------------
  相关解决方案