从asp.net中的txt文件读取时正在使用的文件

时间:2013-05-11 22:06:16

标签: asp.net vb.net

当新用户在我的网站上创建帐户时,我使用io.file为他创建了一些空文本文件。供他将来使用。创建帐户时,用户已登录。在其主页上,我尝试在页面加载事件中读取文本。但它总是给出文件正在使用的错误。当我关闭浏览器然后尝试从该文件中读取文本时。它读起来没有任何问题。

2 个答案:

答案 0 :(得分:2)

每次打开文件时,都必须确保关闭它。

    Dim file As IO.FileStream

    file = IO.File.OpenWrite("filename")

    ' ...

    file.Close()

或者使用

    Using file As IO.FileStream = IO.File.OpenWrite("filename")
        ' ...
    End Using

还有一些功能可以立即打开和关闭文件。

    IO.File.WriteAllText("filename", "content")

答案 1 :(得分:1)

你读过manual了吗?

FileStream File.Create(string path)
     

此方法创建的FileStream对象的默认FileShare值为None;在原始文件句柄关闭之前,没有其他进程或代码可以访问创建的文件。

将其包装在using块中。