Resolve Conversion Spaces
String fileName = Stringutils.trim (File.getname ());
String formatfilename = Encodingfilename (name);//In the following definition method Encodingfilename (string fileName);
Response.setheader ("Content-disposition", "attachment; Filename= "+ formatfilename);
Working with spaces that appear in file names
Where%20 is the encoding of the space under UTF-8
public static string Encodingfilename (String fileName) {
String returnfilename = "";
try {
Returnfilename = Urlencoder.encode (FileName, "UTF-8");
Returnfilename = Stringutils.replace (returnfilename, "+", "%20");
if (Returnfilename.length () > 150) {
Returnfilename = new String (filename.getbytes ("GB2312"), "iso8859-1");
Returnfilename = Stringutils.replace (Returnfilename, "", "%20");
}
catch (Unsupportedencodingexception e) {
E.printstacktrace ();
if (log.iswarnenabled ()) {
Log.info ("Don t support this encoding ...");
}
}
return returnfilename;
}
Or:
filename = urlencoder.encode (filename, "Utf-8")
FileName = Filename.replace ("+", "%20"); Encode to solve space problems after replacement
Response.AddHeader ("Content-disposition", "attachment;filename=" + filename, "utf-8");