private void BT_Generate_Click(object sender, EventArgs e)
        {
            //创建文件流
            FileStream fs = new FileStream("d:\\test.txt", FileMode.Create, FileAccess.Write);
            //创建写入流
            StreamWriter sw = new StreamWriter(fs);
            //写入内容
            sw.WriteLine("逗你玩");
            //关闭流
            sw.Close();
            fs.Close();
            MessageBox.Show("恭喜您,文件写入成功");
        }调试运行后出现错误提示:对路径“d:\test.txt”的访问被拒绝。
请问,该怎么解决

解决方案 »

  1.   

    权限问题?/
    把文件放到一个二级目录下看看,比如
    d:\\aaa\\test.txt
      

  2.   

    没权限,如果不是本来就有个test.txt文件的话,请要确定你有没有写d盘的权限,或者d盘是光驱
      

  3.   

    FileStream fs = new FileStream("d:\\test.txt", FileMode.Append, FileAccess.Write);
    把Create改成Append
    就行
    如果只是想创建新的
    那么在前面先用File.Exists(@"d:\test.txt")
    判断
      

  4.   

    FileStream fs = new FileStream("d:\\test.txt", FileMode.Create, FileAccess.Write);
    这句出了问题,如果"d:\\test.txt"这个文件存在的话,就会出错,可以像楼上的解决的方法.
      

  5.   

    文件是属性是否只读,或者别的程序正在读写这个文件。
    FileStream fs = new FileStream("d:\\test.txt", FileMode.CreateorOpen, FileAccess.Write);
    如果文件存在了,将FileMode改成打开比创建好。
      

  6.   

    换成相对路径试试,比如放在Debug目录下
      

  7.   

    不用FileStream
    直接StreamWrite sw = new StreamWrite("d:\\aaa.txt",true.....);
    sw.WriteLine("hello world");
    sw.close();
      

  8.   

    我把lz的代码考下来,调式了一遍,不管d盘里有没有那个文件,调式都成功,把那个文件打开着,调式也成功。不知道lz那里是怎么回事儿。lz可以单独把那段代码考到别处试试。或者是换个盘试试。