本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

read

通过 TCP/IP 读取远程主机上的数据

说明

示例

read(t) 从连接到远程主机的 tcpclient 对象 t 中读取所有可用数据字节并返回数据。读取的值的数目由 BytesAvailable 属性确定。

对于任何读写操作,该数据类型将转换为 uint8 以便传输数据。如果指定了其他数据类型,则可以将其重新转换为所设置的任何数据类型。

示例

read(t,size) 从连接到远程主机的 tcpclient 对象 t 中读取由 size 指定的数目的值并返回数据。如果 size 大于对象的 BytesAvailable 属性,则该函数会一直等待,直到读取指定数量的数据或到达 timeout 为止。

示例

read(t,size,datatype) 从连接到远程主机的 tcpclient 对象 t 中读取具有指定精度 datatype、指定数目 size 的值,并返回数据。datatype 参数是标准 MATLAB® 数据类型的字符向量。

对于任何读写操作,该数据类型将转换为 uint8 以便传输数据。如果指定了其他数据类型,则可以将其重新转换为所设置的任何数据类型。

示例

全部折叠

使用所示的 IP 地址和端口 4012 创建一个名为 t 的 TCP/IP 对象。

t = tcpclient('172.28.154.231', 4012)
t = 

   tcpclient with properties:

          Address: '172.28.154.231'
             Port: 4012
          Timeout: 10
   BytesAvailable: 0

读取所有可用的数据类型。

read(t)

如果使用不带任何参数的 read 函数,则将会从连接到远程主机的 tcpclient 对象 t 中读取所有可用数据,并返回这些数据。读取的值的数目由 BytesAvailable 属性确定,即等于输入缓冲区中可用的字节数。

通过清除 TCP/IP 客户端对象关闭该对象与远程主机之间的连接。

clear t

创建一个名为 t 的 TCP/IP 对象,通过端口 7 连接到 TCP/IP 回显服务器。

t = tcpclient('localhost', 7)
t = 

   tcpclient with properties:

          Address: 'local host'
             Port: 7
          Timeout: 10
   BytesAvailable: 0

为变量 data 分配 10 个字节的数据。

data = (1:10)

检查数据。

whos data
Name     Size     Bytes     Class     Attributes

data     1x10        10     double

将数据写入回显服务器。

write(t, data)

检查是否使用 BytesAvailable 属性写入了数据。

t.BytesAvailable
ans = 

    80

对于任何读写操作,该数据类型将转换为 uint8 以便传输数据。如果指定了其他数据类型,则可以将其重新转换为所设置的任何数据类型。由于 1 个 double 值等于 8 个 uint8 字节,因此存在 80 个可用字节。

从服务器上读取 10 个双精度值。对象名称始终是第一个参数。size 参数必须为第二个参数,datatype 必须为第三个参数。

read(t, 10, 'double')
ans = 

  1    2    3    4    5    6    7    8    9    10

通过清除 TCP/IP 客户端对象关闭该对象与远程主机之间的连接。

clear t

输入参数

全部折叠

要读取的字节数,指定为数值标量。大小不能设置为 inf。如果 size 大于对象的 BytesAvailable 属性,则该函数会一直等待,直到读取指定数量的数据为止。第一个参数必须是对象名称,第二个参数是大小。size 参数为可选参数。

示例: read(t, 5)

数据类型: double

MATLAB 数据类型,指定为字符向量。大小不能设置为 infdatatype 必须设置为如上所示的 10 个值之一。第一个参数必须是对象名称,第二个参数是大小,第三个参数是数据类型。sizedatatype 参数是可选的。

对于任何读写操作,该数据类型将转换为 uint8 以便传输数据。如果指定了其他数据类型,则可以将其重新转换为所设置的任何数据类型。

示例: read(t, 10, 'double')

数据类型: char

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

在 R2014b 中推出