我正在尝试检查文件是否存在。如果没有创建并写入一些东西。该文件正在创建,但没有更新,并且收到错误消息表明它正被另一个进程使用
代码段:
Public shared sub MyXml()
If Not System.IO.File.Exists("configfile.xml") Then
Dim writer As New System.Xml.XmlTextWriter(fullPath.ToString + "\configfile.xml", Nothing)
End If
Dim xmlElement As New XElement("FilePath", ConfigWindow.Datapath.Text)
System.IO.File.WriteAllText(fullPath + "\configfile.xml", xmlElement.ToString())
end sub()
请提出任何建议......
答案 0 :(得分:4)
WriteAllText
将创建该文件,因此您只需删除If
语句:
Public Shared Sub MyXml()
Dim xmlElement As New XElement("FilePath", ConfigWindow.Datapath.Text)
System.IO.File.WriteAllText(fullPath + "\configfile.xml", xmlElement.ToString())
End Sub
文件被锁定的原因是您的代码创建了一个未被处置的XmlTextWriter
,因此它会一直保留文件。