Я пытаюсь создать файл UTF-8 "myFile.aaa" с помощью HttpServletResponse (HttpServlet). Причина, по которой мне нужно, чтобы это был UTF-8, заключается в том, что он может содержать специальные непечатаемые символы.
Однако приведенный ниже код создает файл в кодировке ANSI. По крайней мере, это то, что говорит Notepad ++, и что я вижу, читая символы из этого файла. Что я делаю не так?
Спасибо
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
res.setHeader("Content-Type", "application/octet-stream; charset=UTF-8");
res.setHeader("Content-Disposition","attachment;filename=myFile.aaa");
res.setCharacterEncoding("UTF-8");
ServletOutputStream os = res.getOutputStream();
os.print("Hello World");
os.flush();
os.close();
}