看了下参数,一模一样的(唯一不同是procedure和function)。
还有为什么要用Read或者ReadBuffer?起什么作用呢?麻烦详细点,谢谢!!!

解决方案 »

  1.   

    Read 好像是返回实际读取的字节 len 多大没关系  
    ReadBuffer len 过长时好像会出错 len 事先要清楚 没错才行 
      

  2.   


    procedure TStream.ReadBuffer(var Buffer; Count: Longint);
    begin
      if (Count <> 0) and (Read(Buffer, Count) <> Count) then
        raise EReadError.CreateRes(@SReadError);
    end;
    尽量使用ReadBuffer
      

  3.   

    Read读取全部
    ReadBuffer可以读取部分,但不能超过总长度
      

  4.   

    ReadBuffer是必须读取到所需字节,否则抛异常。比如stream当前位置到结尾的数据长度小于count参数,就抛异常。
      

  5.   


    总算明白些了,那Read用在什么地方?ReadBuffer又用在什么时候?为什么尽量用ReadBuffer,它的好处是?难道是避免一次读入太多,出现卡死?还是?