Vb.net 尝试将文本写入文件时发生System.IO.IOException

Vb.net 尝试将文本写入文件时发生System.IO.IOException,vb.net,file-io,Vb.net,File Io,我需要能够在创建文本文件后写入它们 'Check for file File.Open("AI\Log.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite) File.Open("AI\AI.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite) 'Write to log If

我需要能够在创建文本文件后写入它们

    'Check for file
    File.Open("AI\Log.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)
    File.Open("AI\AI.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)
    'Write to log
    If File.ReadAllText("AI\Log.txt") = "" Then
        File.AppendAllText("AI\Log.txt", "User>" + Input.Text)
        File.AppendAllText("AI\Log.txt", vbNewLine + "Console>" + Output.Lines.Last)
    Else
        File.AppendAllText("AI\Log.txt", vbNewLine + "User>" + Input.Text)
        File.AppendAllText("AI\Log.txt", vbNewLine + "Console>" + Output.Lines.Last)
    End If
您没有正确使用System.IO API

我看到您的代码首先使用File.Open打开文件,但随后不对返回的流对象执行任何操作,因此文件保持打开状态,然后在仍然有打开句柄的情况下使用静态AppendAllText方法,这将导致泄漏


如果只是使用AppendAllText,则根本不需要使用静态File.ReadAllText或File.Open方法。

哪一行抛出了错误?堆栈跟踪显示了什么?