將XML文件加載到.XMLDocument中後刪除XML文件時出現問題。閱讀後關閉XML文件,以便可以將其刪除
我的代碼解析特定節點的XML文件並將它們的值分配給變量。
完成代碼後,將根據XML文件中的值處理數據。
這工作正常直到最後,當我嘗試刪除XML文件,因爲它仍然打開,然後我得到一個錯誤「該進程無法訪問文件,因爲它正在被另一個進程使用」,我想是XMLDocument閱讀器。
下面是XML處理代碼的一部分 - 這工作正常。
`Dim xmlDoc As XmlDocument = New XmlDocument()
xmlDoc.Load(strFileName)
intPassed = xmlDoc.SelectSingleNode("//CalibrationPassed").InnerText
boolCheck = xmlDoc.SelectSingleNode("//ChecksComplete").InnerText
intCertRequired = xmlDoc.SelectSingleNode("//Schedule").InnerText
Console.WriteLine("Calibration Passed: " & intPassed)
Console.WriteLine("Checks Complete:" & boolCheck)
Console.WriteLine("Schedule: " & intCertRequired)
strFirstName = xmlDoc.SelectSingleNode("//FirstName").InnerText
strEMail = xmlDoc.SelectSingleNode("//Email").InnerText
strCusEmail = xmlDoc.SelectSingleNode("//CustomerEmail").InnerText
strCompanyName = xmlDoc.SelectSingleNode("//CompanyName").InnerText
strContractNumber = xmlDoc.SelectSingleNode("//ContractNo").InnerText
Console.WriteLine("First name: " & strFirstName)
Console.WriteLine("Email: " & strEMail)
Console.WriteLine("Customer EMail: " & strCusEmail)
Console.WriteLine("Company name: " & strCompanyName)
Console.WriteLine("Contract no: " & strContractNumber)
Console.WriteLine("XML Parsing Complete")
` 的代碼被用於刪除該文件是:
If System.IO.File.Exists(strFileName) = True Then
System.IO.File.Delete(strFileName)
Console.WriteLine("Deleted XML file")
End If
上我要去哪裏錯將是巨大的,完全接收任何幫助。
感謝
您是否使用xmlreader讀取文檔?如果是這樣 - 在嘗試刪除xmlDoc之前調用xmlreader.close() – DNKROZ
對不起,我正在使用XMLdocument而不是讀者,所以我不能在最後關閉它! – user3644863