package com.github.ryoasai.springmvc.jxls;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import javax.servlet.http.HttpServletRequest;
import com.sun.xml.internal.messaging.saaj.packaging.mime.internet.MimeUtility;
public class DefaultDownloadFilenameEncoder implements DownloadFilenameEncoder {
private String encoding = "UTF-8";
public String getEncoding() {
return encoding;
}
public void setEncoding(String encoding) {
this.encoding = encoding;
}
public String encode(HttpServletRequest request, String filename) throws UnsupportedEncodingException {
if (request.getHeader("User-Agent").indexOf("MSIE") == -1) {
return MimeUtility.encodeWord(filename, getEncoding(), "B");
} else {
// for legacy IE6
return URLEncoder.encode(filename, getEncoding());
}
}
}