DEV ๐Ÿ’™/JAVA Spring

[JAVA] ์ฒจ๋ถ€ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ ํ•œ๊ธ€์ œ๋ชฉ ๊นจ์ง ๋ฐ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ

DONI. 2021. 8. 27. 13:39
๋ฐ˜์‘ํ˜•

 

 

1๏ธโƒฃ Microsoft Edge ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์—ฃ์ง€

public void fileDown(HttpServletRequest request, HttpServletResponse response) {
	String fileName = "ํ•œ๊ธ€ํŒŒ์ผ๋ช…";
    
	// GET ๋ธŒ๋ผ์šฐ์ € ์ •๋ณด
    String header = request.getHeader("User-Agent");
    // ์ธ์ฝ”๋”ฉ
    if (header.contains("Edge")){
    	fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
        response.setHeader("Content-Disposition", "attachment;filename=\"" + fileName);
    }
}

2๏ธโƒฃ MS IE ์ธํ„ฐ๋„ท์ต์Šคํ”Œ๋กœ๋Ÿฌ

public void fileDown(HttpServletRequest request, HttpServletResponse response) {
	String fileName = "ํ•œ๊ธ€ํŒŒ์ผ๋ช…";
    
	// GET ๋ธŒ๋ผ์šฐ์ € ์ •๋ณด
    String header = request.getHeader("User-Agent");
    // ์ธ์ฝ”๋”ฉ
    if (header.contains("MSIE") || header.contains("Trident")){
    	fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
        response.setHeader("Content-Disposition", "attachment;filename=\"" + fileName);
    }
}

3๏ธโƒฃ Chrome ํฌ๋กฌ

public void fileDown(HttpServletRequest request, HttpServletResponse response) {
	String fileName = "ํ•œ๊ธ€ํŒŒ์ผ๋ช…";
    
	// GET ๋ธŒ๋ผ์šฐ์ € ์ •๋ณด
    String header = request.getHeader("User-Agent");
    // ์ธ์ฝ”๋”ฉ
    if (header.contains("Chrome")){
    	fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");
		response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName);
    }
}

4๏ธโƒฃ Opera ์˜คํŽ˜๋ผ

public void fileDown(HttpServletRequest request, HttpServletResponse response) {
	String fileName = "ํ•œ๊ธ€ํŒŒ์ผ๋ช…";
    
	// GET ๋ธŒ๋ผ์šฐ์ € ์ •๋ณด
    String header = request.getHeader("User-Agent");
    // ์ธ์ฝ”๋”ฉ
    if (header.contains("Opera")){
    	fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");
		response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName);
    }
}

5๏ธโƒฃ Firefox ํŒŒ์ด์–ดํญ์Šค

public void fileDown(HttpServletRequest request, HttpServletResponse response) {
	String fileName = "ํ•œ๊ธ€ํŒŒ์ผ๋ช…";
    
	// GET ๋ธŒ๋ผ์šฐ์ € ์ •๋ณด
    String header = request.getHeader("User-Agent");
    // ์ธ์ฝ”๋”ฉ
    if (header.contains("Firefox")){
    	fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");
		response.setHeader("Content-Disposition", "attachment; filename=" + fileName);
    }
}

 

๋ฐ˜์‘ํ˜•