Main Content

configureTerminator

Set terminator for ASCII string communication

Since R2021a

    Description

    configureTerminator(t,terminator) defines the terminator for both read and write communications with the client connected to the TCP/IP server t. Allowed terminator values are "LF" (default), "CR", "CR/LF", and integer values from 0 to 255. The syntax sets the Terminator property of t.

    After you set the terminator, use writeline and readline to write and read ASCII-terminated string data.

    example

    configureTerminator(t,readterminator,writeterminator) defines separate terminators for read and write communications.

    example

    Examples

    collapse all

    Create a TCP/IP server on port 4000.

    server = tcpserver(4000)
    server = 
      TCPServer with properties:
    
            ServerAddress: "::"
               ServerPort: 4000
                Connected: 0
            ClientAddress: ""
               ClientPort: []
        NumBytesAvailable: 0
    
      Show all properties, functions
    
    

    Set both the read and write terminators to "CR/LF".

    configureTerminator(server,"CR/LF")

    If you have a client connected to the server, you must set the same terminators for the client and server to successfully perform readline and writeline operations.

    Confirm the change.

    server.Terminator
    ans = 
    "CR/LF"
    

    Create a TCP/IP server on port 4000.

    server = tcpserver(4000)
    server = 
      TCPServer with properties:
    
            ServerAddress: "::"
               ServerPort: 4000
                Connected: 0
            ClientAddress: ""
               ClientPort: []
        NumBytesAvailable: 0
    
      Show all properties, functions
    
    

    Set the read terminator to "CR" and the write terminator to 10.

    configureTerminator(server,"CR",10)

    If you have a client connected to the server, you must set the same terminators for the client and server to successfully perform readline and writeline operations.

    Confirm the change.

    server.Terminator
    ans=1×2 cell array
        {["CR"]}    {[10]}
    
    

    Create a TCP/IP server that listens for connections at localhost and port 4000.

    server = tcpserver("localhost",4000)
    server = 
      TCPServer with properties:
    
            ServerAddress: "127.0.0.1"
               ServerPort: 4000
                Connected: 0
            ClientAddress: ""
               ClientPort: []
        NumBytesAvailable: 0
    
      Show all properties, functions
    
    

    Create a TCP/IP client to connect to your server object using tcpclient. You must specify the same IP address and port number you use to create server.

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

    Check the default ASCII terminator for the server.

    server.Terminator
    ans = 
    "LF"
    

    Set the terminators for both the server and client to "CR". The TCP/IP server and its connected client must have the same terminator.

    configureTerminator(server,"CR")
    configureTerminator(client,"CR")

    Write a string of ASCII data from the server to the client by writing it to the server object. The writeline function automatically appends the terminator to the data.

    writeline(server,"hello")

    Write another string of ASCII data with the terminator automatically appended.

    writeline(server,"world")

    Since the client is connected to the server, the data you write is available in the client. Read a string of ASCII data from the client object. The readline function returns data until it reaches a terminator.

    readline(client)
    ans = 
    "hello"
    

    Read a string of ASCII data again to return the second string.

    readline(client)
    ans = 
    "world"
    

    Input Arguments

    collapse all

    TCP/IP server, specified as a tcpserver object.

    Example: configureTerminator(t,"CR/LF") sets the terminator value for the TCP/IP server t.

    ASCII terminator for read and write communication, specified as "LF", "CR", "CR/LF", or a numeric integer value from 0 to 255. Use this form when setting the same terminator for both read and write. When reading from the remote host with a terminator value of "CR/LF", the read terminates on an occurrence of CR and LF together. When writing to the remote host with a terminator value of "CR/LF", the write terminates by adding both CR and LF. This input argument sets the Terminator property.

    Example: configureTerminator(t,"CR/LF") sets both the read and write terminators to "CR/LF".

    Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | char | string

    ASCII terminators for read or write communication, specified as "LF", "CR", "CR/LF", or a numeric integer value from 0 to 255. Use this form when setting different terminators for read and write. When reading from the remote host with a terminator value of "CR/LF", the read terminates on an occurrence of CR and LF together. When writing to the remote host with a terminator value of "CR/LF", the write terminates by adding both CR and LF. This input argument sets the Terminator property.

    Example: configureTerminator(t,"CR",10) sets the read terminator to "CR" and write terminator to 10.

    Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | char | string

    Version History

    Introduced in R2021a