2011-05-27 93 views
2

我想检查文件是否存在。如果不是创建并写入内容。是越来越创建的文件,但没有更新和获取错误消息说,它正被另一个进程如何避免文件被另一个进程在vb.net中使用

代码片段:

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() 

任何建议,请...

回答

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这是不处理,所以它一直持有的文件。

+0

谢谢。它的工作现在很好 – Ram 2011-05-27 11:00:30

+0

@Ram:不用客气:-) – 2011-05-27 11:08:35

相关问题