以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  在WeUI实列中,同名文件上传问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=108543)

--  作者:lanbor
--  发布时间:2017/10/24 20:39:00
--  在WeUI实列中,同名文件上传问题
原句如下:
    For Each key As String In e.Files.Keys
        If key = "img01" Then
            For Each fln As String In e.Files(key)
                Dim NewName As String = fln \'为防止上传同名文件而定义一个新文件名称
                Dim idx As Integer=fln.LastIndexOf(".")
                Dim cnt As Integer =  1
                Do Wh ile FileSys.File Exists(".\\Photo\\" & NewName) \'判断文件夹是否存在同名文件
                    NewName = fln.Ins ert(idx,primaryKey & "_" & cnt) \'如果碰到有同名文件上传,就在文件名称后面自动+记录行号 + 1
                    cnt = cnt + 1
                Loop
                e.SaveFile(key,fln,".\\Photo\\" & NewName) \'以新的文件名保存到的文件夹,
            Next
            dr.Lines("img01")=e.Files(key) ’但保存在字段名中的文件名还是原来的文件名,
        End If
    Next
    dr.Save()

问题如上红色文字说明,
请教:
应该如何修改,才能实现保存在字段 dr("img01") 中的文件名称串也是新的文件名字。
谢谢!


--  作者:有点蓝
--  发布时间:2017/10/24 20:50:00
--  
If e.Files.ContainsKey("img01")
    Dim lst As List(of String) = dr.Lines("img01")
    For Each fln As String In e.Files("img01")
        Dim NewName As String = fln \'为防止上传同名文件而定义一个新文件名称
        Dim idx As Integer=fln.LastIndexOf(".")
        Dim cnt As Integer =  1
        Do Wh ile FileSys.File Exists(".\\Photo\\" & NewName) \'判断文件夹是否存在同名文件
            NewName = fln.Insert(idx,primaryKey & "_" & cnt) \'如果碰到有同名文件上传,就在文件名称后面自动+记录行号 + 1
            cnt = cnt + 1
        Loop
        e.SaveFile(key,fln,".\\Photo\\" & NewName) \'以新的文件名保存到的文件夹,
        lst.Add(NewName)
    Next
    dr.Lines("img01")=lst \'但保存在字段名中的文件名还是原来的文件名,
End If
dr.Save()

--  作者:lanbor
--  发布时间:2017/10/24 21:54:00
--  非常感谢!今天学到好几个问题点处理方法!
非常感谢专家:有点蓝和有点甜!
今天学到好多问题点!