0
我想將幾個XML文件的內容插入到Oracle數據庫中,然後將文件移動到存檔文件夾中,但在錯誤的移動步驟中失敗:不能將文件移動到其他文件夾
The process cannot access the file because it is being used by another process.
下面是代碼:
conn.Open()
For Each oFile As String In Directory.GetFiles("D:\files")
Dim cmd As New OracleCommand
cmd.Connection = conn
filename = New FileInfo(oFile).Name
' integrarea de delivery notes
XML_File = XmlReader.Create(oFile, New XmlReaderSettings())
DataSet.ReadXml(XML_File)
cmd.CommandText = "pkg_erp.insert_delnote"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add("p_delnote_id", OracleDbType.Int64).Direction = ParameterDirection.Input
cmd.Parameters.Add("p_order_id", OracleDbType.Int64).Direction = ParameterDirection.Input
cmd.Parameters.Add("p_product_id", OracleDbType.Int64).Direction = ParameterDirection.Input
cmd.Parameters.Add("p_quantity", OracleDbType.Int64).Direction = ParameterDirection.Input
cmd.Parameters.Add("p_confirm", OracleDbType.Int16).Direction = ParameterDirection.Output
For i As Integer = 0 To DataSet.Tables(0).Rows.Count - 1
cmd.Parameters("p_delnote_id").Value = Convert.ToInt32(DataSet.Tables(0).Rows(i).Item(0))
cmd.Parameters("p_order_id").Value = Convert.ToInt32(DataSet.Tables(0).Rows(i).Item(1))
cmd.Parameters("p_product_id").Value = Convert.ToInt32(DataSet.Tables(0).Rows(i).Item(2))
cmd.Parameters("p_quantity").Value = Convert.ToInt32(DataSet.Tables(0).Rows(i).Item(3))
temp = cmd.ExecuteNonQuery()
result = cmd.Parameters("p_confirm").Value.ToString()
If result = "0" Then
file_waived = file_waived & New FileInfo(oFile).Name & Environment.NewLine
Else
file_list = file_list & New FileInfo(oFile).Name & Environment.NewLine
End If
Next
cmd.Parameters.Remove(cmd.Parameters.Add("p_delnote_id", OracleDbType.Int64))
cmd.Parameters.Remove(cmd.Parameters.Add("p_order_id", OracleDbType.Int64))
cmd.Parameters.Remove(cmd.Parameters.Add("p_product_id", OracleDbType.Int64))
cmd.Parameters.Remove(cmd.Parameters.Add("p_quantity", OracleDbType.Int64))
cmd.Parameters.Remove(cmd.Parameters.Add("p_confirm", OracleDbType.Int16))
File.Move(oFile, "D:\archive_path_FullText\" & filename)
Next
conn.Close()
誰能告訴我如何使用「File.Move()」,以避免提到的錯誤消息,請?
謝謝
的「d:\文件」文件夾中可能包含多種文件類型。除了送貨單它可以包含,例如,發票或acknw。 對於這一點,我生成的參數內循環,之後我發現的文件類型。 – mikcutu
當我使用: '使用 \t XML_FILE = XmlReader.Create(OFILE,新XmlReaderSettings()) \t DataSet.ReadXml(XML_FILE) 結束Using' 它gaves我 「表達預計」 當我使用 '使用XML_FILE作爲的XmlReader = XmlReader.Create(OFILE,新XmlReaderSettings()) \t DataSet.ReadXml(XML_FILE) 結束Using' 它gaves我「變「 XML_File'在封閉塊中隱藏一個變量。 「 我究竟做錯了什麼? – mikcutu
您應該刪除XML_FILE的聲明。(_Dim XML_FILE爲Xml_Reader_ – Steve