Nomes de arquivos localizados em Java
Atualmente, sempre que clico em um arquivo localizado com um nome de arquivo não-ascii no meu aplicativo, a caixa de diálogo Salvar do Windows aparece, mas ele não está exibindo o nome do arquivo corretamente se o conjunto de caracteres estiver acima de ISO- 88859-1.
Este é o meu código que está salvando o arquivo.
InputStream inputStream = null;
try {
response.resetBuffer();
response.setContentType(fileStream.getContentType());
response.setContentLength((int) fileStream.getContentLength());
response.addHeader("Content-Disposition",
"attachment;filename=\"" + fileName + "\"");
ServletOutputStream stream = response.getOutputStream();
byte[] buffer = new byte[1024];
int read = 0;
int total = 0;
inputStream = fileStream.getInputStream();
while ((read = inputStream.read(buffer)) > 0) {
stream.write(buffer, 0, read);
total += read;
}
response.flushBuffer();
} finally {
if (inputStream != null) {
inputStream.close();
}
}
Eu seria muito útil se alguém pudesse compartilhar suas idéias sobre como resolver esse problema. Desde já, obrigado.