안드로이드 개발 질문/답변
(글 수 45,052)
일반 웹페이지를 안드로이드 브라우저에서 보는데요...
파일 다운로드 같은 경우 익스플로러, 사파리, 크롬, 아이폰에서는 아래 소스로 했을 때
다운로드가 잘 되는데 유독 안드로이드폰에서만 다운로드 페이지(download.jsp)만 여러번 호출이 일어나면서
파일다운로드가 되질 않습니다... 이틀째 헤매고 있는 중입니다 ㅜㅜ 아무리 구글링해도 나오질 않네요...
도와주시면 감사하겠습니다 여러분...ㅜㅜ
소스
file_name = new String(file_name.getBytes("utf-8"),"8859_1");
File file = new File(ftp_root + file_path);
response.setHeader("Content-Transfer-Encoding","binary");
//explorer체크하는부분
if(request.getHeader("User-Agent").indexOf("MSIE5.0") > -1){
response.setHeader("Content-Type", "doesn/matter; charset=utf-8");
}else{
response.setHeader("Content-Type", "application/unknown; charset=utf-8");
}
소스
response.setHeader("Content-Disposition","attachment;filename=\"" + file_name + "\"");
response.setHeader("Content-Description","JSP Generated Data");
response.setContentType("application/vnd.ms-excel");
response.setDateHeader("Expires",0);
response.setHeader("pragma", "no-cache"); //HTTP 1.1
byte b[] = new byte[4096];
소스
if (file.isFile())
{
BufferedInputStream fin = null;
BufferedOutputStream outs = null;
try{
out.clear();
out = pageContext.pushBody();
OutputStream ot = response.getOutputStream();
fin = new BufferedInputStream(new FileInputStream(file));
outs = new BufferedOutputStream(ot);
int read = 0;
while ((read = fin.read(b)) != -1){
outs.write(b,0,read);
}
}catch (Exception e) {
System.out.println(e );
} finally {
if (fin != null) fin.close();
if (outs != null) outs.close();
}
} 


