1
我有一個文件上傳和一個函數來加載GridView中的文件。當我選擇一個excel文件並點擊上傳按鈕時,文件上傳到目錄但在加載時出現以下錯誤。對於.txt文件,它工作正常 在xls文件中加載文件錯誤
Private Function UploadCSVFile() As String
Try
If fileCSV.HasFile Then
strFileName = fileCSV.FileName
hdnFileName.Value = fileCSV.FileName
fileCSV.SaveAs(Server.MapPath(strDirectory) & strFileName)
Call LoadData(strFileName) // Gives error in this function
lblImportMsg.Text = "File saved succesfully!"
End If
Return strFileName
Catch ex As Exception
lblImportMsg.Text = ex.ToString
Return "None"
End Try
End Function
Private Sub LoadData(ByVal strFileName As String)
If Not strFileName = "" Then
ds = New DataSet
Dim strFilePath As String = Server.MapPath(strDirectory) '& strFileName
Dim cnn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strFilePath & ";Extended Properties=Text;")
Dim da As New OleDb.OleDbDataAdapter("Select * from [" & strFileName & "]", cnn)
da.Fill(ds)
gvFileInfo.DataSource = ds.Tables(0)
gvFileInfo.DataBind()
End If
End Sub
可能重複[如何打開CSV或XLS與Jet OLEDB和實現表鎖?](HTTP: //stackoverflow.com/questions/1578324/how-to-open-a-csv-or-xls-with-jet-oledb-and-attain-table-lock) – Caveman
感謝@Capitan的幫助。但現在它拋出「System.UnauthorizedAccessException:訪問路徑'E:\ Project \ Simpla \ StdUpload \ rules.xlsx'被拒絕。在System.IO .__ Error.WinIOError(Int32 errorCode」。它只發生在.xls文件 – Abdul
但這是另一個問題,也許它是隻讀的,或者運行該應用程序的用戶沒有在該文件夾/文件中的權限? eh,wait!這是一個xls或XLSX?它們是不同的格式!! – Caveman