Main Content

readbinblock

Read one binblock of data from remote host over TCP/IP

Since R2020b

    Description

    data = readbinblock(t) reads a binblock of data from the remote host specified by the TCP/IP client t and returns the data as a row vector of doubles. The function suspends MATLAB® execution until the first full binblock is read or a timeout occurs.

    The function discards and clears any data in the buffer before the recognized binblock. If no binblock is found the operation times out, returns an empty value, and discards all the data in the buffer. An error in the operation also flushes the data buffer.

    example

    data = readbinblock(t,datatype) reads a binblock of data interpreted as the type specified by datatype. For numeric types, the data is returned as a row vector of doubles. For text types, the data is returned as a character vector or string, as specified.

    example

    Examples

    collapse all

    Create a TCP/IP client connection called t, connecting to a TCP/IP echo server with port 4000. To do so, you must have an echotcpip server running on port 4000.

    echotcpip("on",4000)
    t = tcpclient("localhost",4000)
    t = 
      tcpclient with properties:
    
                  Address: 'localhost'
                     Port: 4000
        NumBytesAvailable: 0
    
      Show all properties, functions
    
    

    Write the values [1,2,3,4,5] as a binblock in uint8 format.

    writebinblock(t,1:5,"uint8")

    Write another binblock of data. Write the values [6,7,8,9,10] as double data.

    writebinblock(t,6:10,"double")

    Since the client is connected to an echo server, the data you write to the server is returned to the client. Read the first binblock of data that you wrote.

    readbinblock(t)
    ans = 1×5
    
         1     2     3     4     5
    
    

    Read a binblock of data again to return the second set of values that you wrote. Specify the data as double.

    readbinblock(t,"double")
    ans = 1×5
    
         6     7     8     9    10
    
    

    Close the connection between the TCP/IP client and the remote host by clearing the object. Turn off the echotcpip server.

    clear t
    echotcpip("off")

    Input Arguments

    collapse all

    TCP/IP client, specified as a tcpclient object.

    Example: readbinblock(t) reads a binblock of data from the TCP/IP client t.

    Size and format of each value, specified as a character vector or string. datatype determines the number of bytes to read for each value and the interpretation of those bytes as a MATLAB data type.

    Example: readbinblock(t,"double") reads a binblock of double data.

    Data Types: char | string

    Version History

    Introduced in R2020b