保存到位置时重命名文件

时间:2017-02-17 15:47:52

标签: vb.net ms-access

我使用以下代码将文件复制到网络位置,并将文件信息存储在访问数据库中。

Dim SqlString1 As String = "INSERT INTO document (incidentid, documentno, documentname, documentpath) VALUES (@incid, @docid, @FileName, @FilePath)"
    Using conn As New OleDbConnection(ConnString)
        conn.Open()
        If Me.TextBox1.Text <> "" Then
            'THIS WILL SAVE THE FILE TO A LOCATION    
            Dim fileLocation As String = OpenFileDialog1.FileName
            File.Copy(fileLocation, Path.Combine("\\10.1.10.5\NonConformance\Document\", Path.GetFileName(fileLocation)), True)
            'THIS WILL SAVE A FILE PATH TO THE ACCESS DB
            Using cmd As New OleDbCommand(SqlString1, conn)
                'cmd.CommandType = CommandType.Text
                cmd.Parameters.AddWithValue("@incid", doc1.Text)
                cmd.Parameters.AddWithValue("@docid", doc2.Text)
                cmd.Parameters.AddWithValue("@FileName", Path.GetFileName(Me.OpenFileDialog1.FileName))
                cmd.Parameters.AddWithValue("@FilePath", "\\10.1.10.5\NonConformance\Document\" & Path.GetFileName(Me.OpenFileDialog1.FileName))
                cmd.ExecuteNonQuery()
                conn.Close()
            End Using
        End If
        conn.Close()
    End Using

我担心如果用户上传的文件名与文件夹中已有的文件名相同,则在以后尝试检索信息时会出现问题。

所以有人可以告诉我如何在将文件复制到网络位置时重命名该文件。理想情况下,我想将其重命名为@ incid_ @ docid参数

1 个答案:

答案 0 :(得分:0)

我最终改变了

Path.GetFileName(fileLocation))

要阅读的元素

Path.GetFileName("INC" & Label6.Text & "DOC" & doc2.Text & ".pdf")

这将为我解决问题,感谢您的回复。