Read Method  

Return data read from the server.


object.Read( Buffer, [Length] )


A buffer that the data will be stored in. If the variable is a String then the data will be returned as a string of characters. This is the most appropriate data type to use if the server is sending data that consists of printable characters. If the server is sending binary data, a Byte array should be used instead. This parameter must be passed by reference.
A numeric value which specifies the number of bytes to read. Its maximum value is 231-1 = 2147483647. This argument is required to be present for string data. If a value is specified for this argument for other permissible types of data, and it is less than number of bytes that is determined by the control, then Length will override the internally computed value. If the argument is omitted, then the maximum number of bytes to read is determined by the size of the buffer.

Return Value

The number of bytes actually read from the server is returned by this method. If an error occurs, a value of -1 is returned.


The Read method returns data that has been read from the server, up to the number of bytes specified. If no data is available to be read, an error will be generated if the control is non-blocking mode. If the control is in blocking mode, the program will wait until data is returned by the server or the connection is closed.


If the data contains binary characters, particularly non-printable control characters and embedded nulls, you should always provide a Byte array to the Read method. When you provide a String variable as the buffer, the control will process the data as text. Binary characters may be interpreted as UTF-8 encoding and embedded null characters will corrupt the data. Reading the data into a byte array ensures that you receive the data exactly as it was sent by the server.

See Also

IsConnected Property, IsReadable Property, Write Method, OnRead Event, OnWrite Event