public string FGetString(string ss)
        {
            
            byte[] buffer = new byte[1024];
            string tag1,VR1,length1,value1;
            StreamReader reader = new StreamReader(textBox_path.Text);
            reader.BaseStream.Read(buffer, 0, 128);
            reader.BaseStream.Read(buffer, 0, 4);
            if (Encoding.Default.GetString(buffer, 0, 4) == "DICM")
            {
                reader.BaseStream.Read(buffer, 0, 4);
                int temp = buffer[0] + (buffer[1] << 8);
                int temp1 = buffer[2] + (buffer[3] << 8);
                tag1 = temp.ToString("0000") +","+ temp1.ToString("0000");
             
                reader.BaseStream.Read(buffer, 0, 2);
                VR1 = Encoding.Default.GetString(buffer ,0,2);
      
                reader.BaseStream.Read(buffer, 0, 2);
                int len = buffer[0] + (buffer[1] << 8);
                length1 = len.ToString();
              
                reader.BaseStream.Read(buffer, 0, len);
              int  temp3 = 0;
                for (int i = 0; i < len; i++)
                {
                    temp3 += buffer[i] << (i * 8);
                }
                value1 = temp3.ToString();
              return  tag1 + " " + VR1 + " " + length1 + " " + value1+"\r\n";
                 this.textBox1.Text = FGetString(textBox_path.Text.temp3.ToString());
            }
        }
运行之后会出现以下错误 :
“string”不包含“temp3”的定义,并且找不到可接受类型为“string”的第一个参数的扩展方法“temp3”(是否缺少 using 指令或程序集引用?)
 该怎么解决呢?

解决方案 »

  1.   

    textBox_path.Text.temp3.ToString()这个为什么是这样写?
      

  2.   

    int temp3 = 0;
      for (int i = 0; i < len; i++)
      {
      temp3 += buffer[i] << (i * 8);
      }temp3为int整型变量,而下面的+=赋值应该为string字符串类型,因此出错了把int temp3=0改为string temp3=""就行了
      

  3.   

    this.textBox1.Text = FGetString(textBox_path.Text.temp3.ToString());方法调用自己?
      

  4.   

    你这句是什么意思? this.textBox1.Text = FGetString(textBox_path.Text.temp3.ToString());
      

  5.   

    现在楼主的错误提示就是用int类型的temp3来进行string类型的操作了,别的没看到什么问题,参考2楼先改代码试试
      

  6.   

    不会本来是想写this.textBox1.Text = FGetString(textBox_path.Text+temp3.ToString())吧