我有一个带有下载按钮的jsp表单。每当用户单击该按钮时,它就会下载一个pdf文件和弹出窗口。我使用的是chrome浏览器。我的下载位置是
C:\Users\gt\Downloads
为此,我使用以下代码从该位置打开。
String filePath=System.getProperty("user.home")+"\\Downloads\\"+pdfname;
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " +filePath);
现在,当用户单击下载按钮时,pdf文件将以如下名称保存在该位置 F90CR0010-HBR-C-4.pdf
我的代码会正确打开这个。
当用户再次单击下载按钮时,它将保存为like F90CR0010-HBR-C-4 (1).pdf
但我的代码将只打开以前的旧文件。因为名称仅此而已。我需要打开最新下载的文件。
你知道如何打开最新下载的文件吗?我有一个想法,我可以把当前时间添加到我的 pdfname
所以它将是唯一的。但我的要求是,pdf名称应该像这样只有。
1条答案
按热度按时间zengzsys1#
如果您知道基本文件名是什么(在您的情况下
F90CR0010-HBR-C-4.pdf
)然后可以使用一个简单的正则表达式来检查表单的字符串F90CR0010-HBR-C-4\(\d+\).pdf
. 如果你找到一个,那么只要找出其中有最大的数字,并打开那个。它不太漂亮,但很管用。另外,从技术上讲,这可以通过制作自己的名为f90cr0010-hbr-c-4(999999).pdf的文件进行“黑客攻击”,但我猜你不会真的在意。