我有一个带有下载按钮的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
保存在该位置,我的代码将正确打开。
当用户第二次再次点击下载按钮时,它将保存为F90CR0010-HBR-C-4 (1).pdf
但是我的代码只会打开旧的旧文件。因为名称只是那个。我需要打开最新下载的文件
关于如何打开最新下载文件的任何想法?我有一个想法,我可以将当前时间添加到我的pdfname
,因此它将是唯一的。但我的要求是pdf名称应该像这只是。
答案 0 :(得分:1)
如果您知道基本文件名是什么(在您的情况下为F90CR0010-HBR-C-4.pdf
),那么您可以使用简单的正则表达式来检查F90CR0010-HBR-C-4\(\d+\).pdf
形式的字符串。如果你找到一个然后找出哪一个具有最大数量并打开那个。
它不是很漂亮,但它确实有效。此外,从技术上讲,这可以通过制作一个名为F90CR0010-HBR-C-4(999999).pdf的文件来“入侵”,但我猜你真的不在乎。