java上传文件名乱码
① java生成文件名乱码怎么解决
输出excel:
response.setHeader("Content-disposition","attachment;filename*=utf-8'zh_cn'"
+URLEncoder.encode('文件名',"UTF-8")+".xls");//设定输出文件头
response.setContentType("application/ms-excel");//定义输出类型
② java 项目中,上传的excel打开时无法正常打开,显示乱码 ,怎样可以正常打开,
1、转换格式法就是将受损的Excel XP工作簿另存格式选为SYLK。如果可以打开受损文件,只是不能进行各种编辑和打印操作,那么建议首先尝试这种方法。2、直接修复法最新版本的Excel XP在“打开”窗口的“打开”按钮内有直接修复受损文件的“打开并修复”功能,这种方法适用于常规方法无法打开受损文件的情况。3、偷梁换柱法遇到无法打开受损的Excel XP文件时,也可以尝试使用Word来打开它。操作如下:(1)运行Word程序,选择需要打开的Excel文件;(2)如是首次运用Word程序打开Excel XP文件,可能会有“Microsoft Word无法导入指定的格式。这项功能目前尚未安装,是否现在安装?”的提示信息,此时可插入Microsoft Office安装盘进行安装;(3)按照Word程序的提示选择修复整个工作簿还是某个工作表;(4)先将文件中被损坏的数据删除,再将鼠标移动到表格中,并在菜单栏中依次执行“表格→转换→表格转换成文字”命令,选择制表符为文字分隔符,将表格内容转为文本内容,然后另存为纯文本格式文件;(5)运行Excel XP程序,打开刚保存的文本文件;(6)随后根据“文本导入向导”的提示就能顺利打开该文件了。
修复后的工作表与原工作表基本一样,不同的是表格中所有的公式都需重新设置,还有部分文字、数字格式丢失了。4、自动修复法
此法适用于Excel XP程序运行出现故障关闭程序或断电导致的文件受损。重新运行Excel XP,它会自动弹出“文档恢复”窗口,并在该窗口中列出已自动恢复的所有文件。用鼠标选择要保留的文件,并单击指定文件名旁的箭头,根据需要选择“打开”、“另存为”、“显示修复”。
在缺省状态下Excel XP是不会启用自动修复功能的,因此预先设置:首先在菜单栏中依次点击“工具→选项”命令,在设置框中单击“保存”标签,将“禁用自动恢复”复选框取消,然后选中“保存自动恢复信息,每隔X分钟”复选项,并输入指定的间隔频率,最后点击“确定”完成设置。
如果还没有自动弹出“文档恢复”窗口,可以尝试用手工的方法打开自动恢复的文件:依次执行“文件→打开”命令,利用“查找范围”框定位并打开Excel XP保存自动恢复文件的文件夹,要是不知道那个文件夹的位置,可以查看“自动恢复文件保存位置”框中的路径,接着在“文件类型”选择对话框中,选中“所有文件(*.*)”选项,并选择要恢复的文件,最后单击“打开”按钮,打开文件进行自动修复。5、工具修复法
如果上面的几种方法都不能修复文件,还可以借助专门用来修复受损Excel XP文件的“ExcelRecovery”。该软件会自动将修复程序加到Excel软件中,表现为在“文件”菜单下增添一项“Recovery”命令,它能自动以修复方式打开受损文件。
③ jspsmartupload上传的文件名是乱码怎么办
方法一:(之前在页面直接跳转上传时能够解决问题,异步提交上传图片就不能正常了)
1.解决中文乱码:
【1】:首先上传页面和接收页面都必须制定编码格式为GBK;
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
【2】:在上传页面要response.setCharacterEncoding("GBK");
【3】:在接收页面要request.setCharacterEncoding("GBK");
【4】:注意上传时表单要指定编码为:enctype="multipart/form-data"
【5】:注意上传时表单要指定方法为:method="post"
方法二:(异步提交表单能正常解决)
【1】上传页面:(对参数做一次encodeURI)js
//对表单中的中文区域值得获取并进行转码
var name = parent.window.$("#tabs_name").val();
var direction = parent.window.$("#tabs_direction").val();
parent.window.$("#tabs_name").val( encodeURI(name));
parent.window.$("#tabs_direction").val( encodeURI(direction));
parent.window.$('#subject_modify').submit(); //提交表单
【2】接收参数页面(对参数做一次URLDecoder)
String name = smart.getRequest().getParameter("name");
name = URLDecoder.decode(name,"utf-8");
④ java文件上传时提示(文件名,目录名或卷标语法不正确)
java文件上传过程的时候有中文就很出现乱码,通常获取到的文件中通常都是“iso8859-1”格式,需要转换为“UTF-8”格式。
如:String str = new String(str.getByte("iso8859-1"),"UTF-8");进行下强制转换后在进行读取即可。
备注:上面str就是文件路径和对应的名称,通常格式有GBK、UTf-8、iso8859-1、GB2312,如果上面的强制转换不成功,依次进行这些格式的尝试,肯定是可以解决问题的。
⑤ java文件传输时 用字符串转发 可是 会出现乱码 怎么解答
java
文件传输
请用
2进制
模式,不要用字符串。因为文件如果不是纯文本格式,控制字符无法通过字符串正常处理。
⑥ java文件上传文件名乱码。。
HttpServletRequest request = ServletActionContext.getRequest();
if (request.getHeader("User-Agent").toLowerCase().indexOf("firefox") >0){
try {
filename = new String(filename.getBytes("UTF-8"), "ISO8859-1");
} catch (Exception e) {
e.printStackTrace();
}//firefox浏览器}
}else {
try {
filename = URLEncoder.encode(filename, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
}//IE浏览器
}
⑦ java出现乱码怎么解决
你的类名和文件名都不一样怎么编译。
把wjsw.java改成HelloWorld.java
⑧ java读写文件,在服务器显示乱码问题
写入文件的时候设置下编码格式即可,之后读取就不会是乱码的。
可以通过“FileOutputStream”创建文件实例,之后过“OutputStreamWriter”流的形式进行存储,举例:
OutputStreamWriter pw = null;//定义一个流
pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"UTF-8");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
pw.write("我是要写入到记事本文件的内容");//将要写入文件的内容,可以多次write
pw.close();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
⑨ 在JAVA怎么处理上传文件的乱码问题
变成数字是用了别的编码的原因,如%2F等等
你对文件名进行编码转换了没有?
⑩ AIX系统Java生成文件文件名乱码
一般为两种原因:
第一:工程编码格式是否和导出文件格式一样
第二:导出文件格式是否和导出文件的本地计算机环境一样,即编码一样