另tab.arr文件中的文本如下:
*** 0
*** 0
*** 0

解决方案 »

  1.   

    FileStream fs = new FileStream(patch,FileMode.Open,FileAccess.ReadWrite);
    FileAccess.ReadWrite这个设置有什么用 不是可以读写吗
      

  2.   

    FileStream fs = new FileStream(patch,FileMode.Open,FileAccess.ReadWrite);
    FileAccess.ReadWrite这个设置有什么用 不是可以读写吗
      

  3.   

    1 对,支持 web_gus(penny) ( ) 的观点,不能对一个文件同时进行读操作和写操作,因为,在对一个文件进行写操作时,此文件就被加锁了,别的对象将不能访问到它;2 对你的下个问题:
    FileStream fs = new FileStream(patch,FileMode.Open,FileAccess.ReadWrite);
    FileAccess.ReadWrite这个设置有什么用 不是可以读写吗?答:FileAccess.ReadWrite这个设置是有作用的,它表明这个打开的文件流即可以作为
        输出流又可以作为输入流,如下面的代码:    FileStream fs = new FileStream(patch,FileMode.Open,FileAccess.ReadWrite);
        StreamReader sr = new StreamReader(fs,System.Text.Encoding.Default);
        ....... //进行读操作
        sr.Close();  //关闭读操作    StreamWriter sw = new StreamWriter(fs,System.Text.Encoding.Default);
        ........ //进行写操作
        sw.Close();    若你使用的是:FileAccess.Read,那么你只能对文件流(FileStream)对象fs
        进行读操作了;若你用的是:FileAccess.Write,那么你只能对文件流(FileStream)
       对象fs 进行写操作了
      

  4.   

    1.可以设置构造函数的FileShare参数来设置文件是否是可以被同时访问,修改等。
    FileStream fs = new FileStream(patch,FileMode.Open,FileAccess.ReadWrite,FileShare.ReadWrite);
    2.你的代码去掉
    if(tabflag == "0")
    {
    sr.Close();
    //fs.Close();
    stwline = Newclass + @" 1";
    //MessageBox.Show(stwline,"提示");
    sw.WriteLine(stwline);
    sw.Close();
    fs.Close();
    break;
    }
    这里面的sr.Close();就不会报错,至于其他逻辑问题自己再检查啦