StreamWriter 权限不足,未授权访问异常

Jis*_*han 0 c# exception streamwriter

我正在使用以下代码将文件写入桌面。

string submittedFilePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
int i = 0;
StreamWriter sw = null;
sw = new StreamWriter(submittedFilePath, false);

for (i = 0; i < PSOLib.table.Columns.Count - 1; i++)
{
    sw.Write(PSOLib.table.Columns[i].ColumnName + ";");
}

sw.Write(PSOLib.table.Columns[i].ColumnName);
sw.WriteLine();

foreach (DataRow row in PSOLib.table.Rows)
{
    object[] array = row.ItemArray;

    for (i = 0; i < array.Length - 1; i++)
    {
        sw.Write(array[i].ToString() + ";");
    }

    sw.Write(array[i].ToString());
    sw.WriteLine();
}

sw.Close();
Run Code Online (Sandbox Code Playgroud)

但是,每当我尝试调用该方法时,我都会得到:

Access to the path 'C:\\Users\\User\\Desktop' is denied. 
System.UnauthorizedAccessException.
Run Code Online (Sandbox Code Playgroud)

mih*_*hai 6

您没有为您的 指定文件StreamWriter,而是指定了一个文件夹。

这应该这样做:

string submittedFilePath = 
Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\myFile.txt.";
Run Code Online (Sandbox Code Playgroud)