如何更改此代码以强制覆盖驱动器上保存的现有先前打开的文件?它是用于在客户端打开 pdf 文件的 servlet 的一部分。
response.reset();
response.setContentType("application/pdf");
response.setContentLength(file.length());
response.setHeader("Content-disposition", "inline; filename=\"" + file.getName() + "\"");
BufferedInputStream input = null;
BufferedOutputStream output = null;
try
{
input = new BufferedInputStream(new FileInputStream(file), DEFAULT_BUFFER_SIZE);
output = new BufferedOutputStream(response.getOutputStream(), DEFAULT_BUFFER_SIZE);
byte[] buffer = new byte[DEFAULT_BUFFER_SIZE];
int length;
while ((length = input.read(buffer)) > 0)
{
output.write(buffer, 0, length);
}
}
finally
{
close(output);
close(input);
}
打开文件的每个下一个副本都有一个新索引,例如test.pdf、test(1).pdf 等
最佳答案
你无法控制它。
这取决于客户端的操作系统文件系统实现
关于java - Servlet - 强制覆盖下载的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8546288/