Сохраняю файл из директории в браузере, но почему-то в место кириллические символы заменяются на символ _
.
Пример:
String fileName = "ПЛ5.111.008 СБ [1].tif".replace(' ', '-');
Сохраняется файл вот так - __5.111.008-__-[1].tif
Пример Кода:
response.setContentType("text/html");
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("application/download");
String fileName = "ПЛ5.111.008 СБ [1].tif".replace(' ', '-');
response.setHeader("Content-Disposition",
"attachment;filename=" + fileName);
String test = request.getParameter("test");
simpleDLL sdll = simpleDLL.INSTANCE;
File file = new File("D:/file/ПЛ5.111.008 СБ/ПЛ5.111.008 СБ [1].tif");
FileInputStream fileIn = new FileInputStream(file);
ServletOutputStream out = response.getOutputStream();
byte[] outputByte = new byte[4096];//copy binary contect to output stream
while (fileIn.read(outputByte, 0, 4096) != -1) {
out.write(outputByte, 0, 4096);
}
fileIn.close();
out.flush();
out.close();
request.setAttribute("test", test);
RequestDispatcher view = request.getRequestDispatcher("/index.jsp");
Можно глобально установить кодировку
try {
System.setProperty("file.encoding", "UTF-8");
Field charset = Charset.class.getDeclaredField("defaultCharset");
charset.setAccessible(true);
charset.set(null, null);
} catch (NoSuchFieldException e) {
log.warn("defaultCharset property does not exist", e);
} catch (IllegalAccessException e) {
log.warn("charset.set(null, null): Illegal access exception", e);
}
Нашел способ это поправить:
String fileName = "ПЛ5.111.008 СБ [1].tif";
String URLEncodedFileName = URLEncoder.encode(fileName, "UTF-8");
String ResultFileName = URLEncodedFileName.replace('+', ' ');
response.setHeader("Content-Disposition",
"attachment;filename=" + ResultFileName);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть HTML форма с фильтрами, после отправки GET запроса или после обновления страницы все значения input'ов слетаютКак с помощью js/jquery вытянуть...
Как запустить скрипт нажав правую кнопку мыши и выбрав нужный скрипт? Использую этот параметр:
Только начал учить Js, сейчас прохожу блок по DOMНаписал абстрактную регистрацию пользователя с проверкой на совпадение паролей, на сколько...
Есть три кнопкиПо нажатию на первую кнопку запускается первый секундомер, по нажатию на вторую останавливается первый и запускается второй...