我们的程序将PDF保存到网络文件夹。然后我将把PDF复制到Web服务器。当用户多次保存/存档同一报告时会出现问题。
示例:
有没有办法可以复制最新版本?我只想要复制DAGH4(002)。PDF和DANYL(001).PDF。或者有没有办法重命名并保存最新版本?
另一个想法
使用此代码,我检查文件是否存在,并允许用户单击缩略图以打开关联的PDF。
Dim pdf_path = Server.MapPath(String.Format("../Reports/{0}.pdf",
SerialNumber))
lblSerial.Visible = System.IO.File.Exists(pdf_path)
HyperLinkSerial.Visible = System.IO.File.Exists(pdf_path)
HyperLinkSerial.Text = "Inspection"
HyperLinkSerial.NavigateUrl = "../Reports/" & SerialNumber & ".PDF"
但是,我只需找到并显示DAGH4(002).PDF,修改日期为2016年3月16日上午10:10
使用VB .NET可以吗?
答案 0 :(得分:0)
要查找每个文件的最新副本,您可以使用LINQ按序列号分组,按修改日期排序,并选择每个组的第一个项目。请注意,这假设您的“SerialNumber”只是字母和数字(正则表达式匹配):
Dim latest As IEnumerable(Of String) =
From f In New DirectoryInfo(Server.MapPath("../Reports")).EnumerateFiles("*.PDF")
Let serialNumber = Regex.Match(f.Name, "^\w+").Value
Order By serialNumber Ascending, f.LastWriteTime Descending
Group By serialNumber Into Group
Select Group.First().f.FullName
latest
将拥有每个序列号的最新(基于修改日期)文件的完整路径/名称。