private void 打开oToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (ofd.ShowDialog() == DialogResult.Cancel)
            {
                return;
        }
            FileStream fsopen = File.OpenRead(ofd.FileName);
            Encoding ed = Encoding.Default;
            byte[] b = ed.GetBytes(?????);
            fsopen.Read(b, 0, b.Length);
            fsopen.Close();
       }
问题:我要打开一个文件,ofd是OpenFileDialog的名字。请问,(括号中的问号部分)怎样才能把要打开的txt的文件的内容放到打问号的括号里去?

解决方案 »

  1.   

    fsopen.Read(b, 0, b.Length); 这部就是么 没明白
      

  2.   

    问题其实很简单,不过楼主的逻辑有些混乱……
    最简单的实现如下:
    string txt = File.ReadAllText(ofd.FileName);想要换成byte[]也很容易:
    byte[] txt = File.ReadAllBytes(ofd.FileName);需要在string和byte[]之间转换就需要研究一下Encoding的相关用法了。
    比如:
    Encoding.Default.GetBytes()   => 将string转成byte[]
    Encoding.Default.GetString()  => 将byte[]转成string
      

  3.   

    FileStream fsopen = File.OpenRead(ofd.FileName); 
                Encoding ed = Encoding.Default; byte[] b =new byte[fsopen.Length];fsopen.Read(b, 0, b.Length);