sw = new StreamWriter(filepath , false, encode);
sw.Write(str);
sw.Flush();程序是在第一句报错的,其中filepath值为:@"E:\mybbs\web\html\15.htm"我是想把str字符串内的数据生成一个15.htm文件报这个错误,是程序问题,还是写文件写不进去?

解决方案 »

  1.   

    StreamWriter sw = new StreamWriter(filepath , false, encode);
      

  2.   

    StreamWriter 是操作 Stream 的。你应该用 FileStream 生成文件。或者用 FileStream 结合 StreamWriter 来用。
    using(FileStream fs = new FileStream(filepath, FileMode.Create, FileAccess.Write))
    {
       using(StreamWriter sw = new StreamWriter(fs))
       {
           sw.Write(str);
           sw.Flush();
       }
    }
      

  3.   

    encod 有赋值的STR也存在,sw是我简写了 上面也定义了前面给了:Encoding encode = Encoding.GetEncoding("gb2312");文件路径是正确的  但是15.htm 这个文件是不存在的我就是要生成这个文件的
      

  4.   

    这个会不会跟文件夹的权限有个关?html这个文件夹是只读的,我是2003的系统,FAT32的格式,所以文件夹属性里面没有“安全”这个设置,但是我已经在虚拟目录里面设置为可写了