주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

read

UDP 소켓에서 데이터 읽기

    설명

    data = read(u,count)는 지정된 개수의 값을 udpport 소켓 u에서 읽고, 수치 데이터를 해석하기 위해 디폴트 정밀도 uint8을 사용합니다. 바이트 유형 udpport 객체 u의 경우 결과 data는 double형의 행 벡터입니다. 데이터그램 유형 udpport 객체 u의 경우 결과 dataDatagram 구조체 또는 구조체 배열입니다.

    예제

    data = read(u,count,datatype)datatype으로 지정된 정밀도로 udpport 소켓 u에서 읽습니다. 숫자형 datatype의 경우 값은 double형으로 반환됩니다. datatype, "char" 또는 "string"의 경우 결과는 지정된 유형입니다.

    예제

    예제

    모두 축소

    이 예제는 바이트 데이터를 읽는 방법을 보여줍니다.

    udpport 소켓에서 uint32 데이터의 5개 값을 읽습니다.

    u = udpport("IPV4");
    data = read(u,5,"uint32");

    5개의 값은 udpport 소켓에서 총 20바이트의 uint32 데이터를 구성합니다. MATLAB에서 data는 double형 배열입니다.

    이 예제는 데이터그램 데이터를 읽는 방법을 보여줍니다.

    포트 3030에서 echoudp를 켠 다음, OutputDatagramSize가 5인 데이터그램 유형의 udpport 객체를 생성합니다.

    echoudp("on",3030);
    u = udpport("datagram","OutputDatagramSize",5);

    uint8 데이터 20바이트를 echoudp 포트로 보냅니다.

    write(u,1:20,"uint8","127.0.0.1",3030);

    OutputDatagramSize가 5로 설정되었으므로 20바이트는 각각 5바이트의 데이터를 포함하는 4개의 데이터그램 패킷으로 전송됩니다.

    에코 서버로부터 4개의 데이터그램이 수신되었는지 확인합니다.

    u.NumDatagramsAvailable
    ans =
    
         4

    에코 서버로부터 수신된 4개의 데이터그램을 읽습니다.

    data = read(u,u.NumDatagramsAvailable,"uint8")
    data = 
    
      1×4 Datagram array with properties:
    
        Data
        SenderAddress
        SenderPort

    첫 번째 데이터그램에는 1~5(5바이트)의 값이 포함되어 있고, 두 번째 데이터그램에는 6~10, 세 번째 데이터그램에는 11~15, 네 번째 데이터그램에는 16~20의 값이 포함되어 있습니다.

    세 번째 데이터그램을 봅니다.

    data(3)
    ans = 
    
      Datagram with properties:
    
                 Data: [11 12 13 14 15]
        SenderAddress: "127.0.0.1"
           SenderPort: 3030

    입력 인수

    모두 축소

    UDP 소켓으로, udpport 객체로 지정됩니다.

    예: u = udpport

    데이터형: udpport object

    udpport 소켓에서 읽을 값 또는 데이터그램의 개수로, 숫자 값으로 지정됩니다. count0, Inf 또는 NaN으로 지정할 수 없습니다. countudpport 객체의 NumBytesAvailable 또는 NumDatagramsAvailable 속성보다 큰 경우, 함수는 지정된 수의 값 또는 데이터그램이 읽히거나 시간 초과가 발생할 때까지 기다립니다.

    예: 16

    데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    각 값에 대한 MATLAB 데이터형으로, string형이나 문자형 벡터로 지정됩니다. datatype는 각 값에 대해 읽을 비트 수와 해당 비트를 MATLAB 데이터형으로 해석하는 방법을 지정합니다. 허용되는 값은 "int8", "int16", "int32", "int64", "uint8", "uint16", "uint32", "uint64", "double", "single", "char""string"입니다.

    예: "uint16"

    데이터형: char | string

    출력 인수

    모두 축소

    udpport 소켓에서 읽은 값입니다. 바이트 유형 udpport 객체의 경우 결과는 string형, 문자형 벡터 또는 1xN 행 벡터입니다. 여기서 Ncount로 지정된 값의 개수입니다. 데이터그램 유형의 udpport 객체의 경우 결과는 Datagram 구조체 또는 구조체 배열입니다. 데이터가 반환되지 않으면 data는 비어 있습니다.

    버전 내역

    R2020b에 개발됨

    참고 항목

    함수