TCP 소켓을 통해 16진수 변수 보내기

엘리아오

아마도 쉬운 일이지만 저는 Lua 초보자입니다...
KVL API를 사용하여 프로젝션 서버를 제어하는 ​​매우 간단한 QSC QSYS 플러그인을 만들고 있습니다. 서버 API는 16진수 문자열을 기반으로 합니다.
예를 들어 이 명령은 서버에 9bf5455689ed4c019731c6dd3c071f0euuid 가 있는 재생 목록을 로드하도록 요청합니다 .

Controls["LoadSPL"].EventHandler = function()
    sock:Write(
        "\x06\x0e\x2b\x34\x02\x05\x01\x0a\x0e\x10\x01\x01\x01\x03\x09\x00\x83\x00\x00\x14\x00\x00\x00\x01\x9b\xf5\x45\x56\x89\xed\x4c\x01\x97\x31\xc6\xdd\x3c\x07\x1f\x0e"
    )
end

이제 사용자 인터페이스의 텍스트 상자(또는 서버에서 읽은 사용 가능한 UUID 목록)에 표시된 텍스트에 따라 변수 UUID가 있는 문자열을 생성할 수 있어야 합니다. 이 문자열을 명령의 고정된 부분에 연결하겠습니다. 어떻게 하면 be와 같은 문자열을 올바르게 만들
ad17fc696b49454db17d593db3e553e5
\xad\x17\xfc\x69\x6b\x49\x45\x4d\xb1\x7d\x59\x3d\xb3\xe5\x53\xe5있습니까?

재스민 속

이 시도:

local input = "ad17fc696b49454db17d593db3e553e5"
local output = input:gsub("%w%w", function(s) return string.char(tonumber(s, 16)) end)

설명: 이것은 모든 문자 쌍을 가져와 기본 16 숫자 문자열로 해석한 다음 해당 숫자의 문자를 가져와 원래 문자를 대체하는 데 사용합니다.


편집: 무슨 일이 일어나고 있고 다른 답변이 잘못된 이유를 명확히 하기 위해 \xadLua 소스 코드의 기능인 백슬래시 이스케이프 시퀀스 는 메모리에서 값 이 있는 바이트로 표시되는 173것처럼 A이 있는 바이트로 표시됩니다. 65. 리터럴 백슬래시 문자를 16진수 문자와 연결하려고 하면 이스케이프 코드가 생성되지 않습니다. 따라서 이를 수행하는 방법은 수동으로 를 사용하는 것 string.char입니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

LUA는 tcp 소켓을 통해 16 진수 변수를 보냅니다.

TCP 소켓을 통해 보낼 수있는 최대 문자 크기

golang의 tcp 소켓을 통해 수백만 개의 짧은 메시지 보내기

소켓을 통해 수동으로 HTTP 요청 보내기

C의 Windows 소켓을 통해 정수 보내기

Qt 소켓을 통해 64 비트 정수 보내기

소켓을 통해 변수를 보내는 파이썬

소켓을 통해 16 진수 데이터를 보내는 것은 문자열로 해석됩니다.

TCP / IP 소켓 (웹 서버)을 통해 파일 보내기

파이썬에서 TCP 소켓을 통해 파일 보내기

TCP 소켓을 통해 큰 Base64 문자열 보내기

TCP 소켓을 통해 파일 보내기 C++ | 창

c의 tcp 소켓을 통해 구조체 보내기

불완전한 TCP 소켓을 통해 char 버퍼 보내기

TCP 소켓을 통해 여러 파일 보내기

Python에서 TCP 소켓을 통해 목록 보내기

TCP 연결 Lua를 통해 문자열 변수 보내기

Java, 소켓을 통해 MouseEvents 보내기, 어떻게 할 수 있습니까?

c의 소켓을 통해 원자 적으로 정수 보내기

VB.Net을 사용하여 TCP를 통해 파일을 보내고 Python3.6에서 소켓으로 수신하는 동안 파일 인코딩 오류

TCP 소켓 파이썬을 통해 단일 바이트 보내기

엄격한 앨리어싱 규칙을 위반하지 않고 소켓을 통해 정수 보내기

C++ 실수로 닫히지 않고 소켓을 통해 \0이 포함된 파일 보내기

Python에서 소켓 (전용)을 통해 이미지 보내기, 이미지를 열 수 없음

데이터 수신에 의존하지 않고 소켓을 통해 데이터 보내기

소켓을 통해 Java에서 CPP로 스크린 샷 보내기-이미지 수신 문제

소켓을 통해 모두 보낼 수 없습니다.

tmux 바인딩을 통해 변수 보내기

React 라우팅을 통해 매개 변수 값 보내기

TOP 리스트

  1. 1

    Ionic 2 로더가 적시에 표시되지 않음

  2. 2

    JSoup javax.net.ssl.SSLHandshakeException : <url>과 일치하는 주체 대체 DNS 이름이 없습니다.

  3. 3

    std :: regex의 일관성없는 동작

  4. 4

    Xcode10 유효성 검사 : 이미지에 투명성이 없지만 여전히 수락되지 않습니까?

  5. 5

    java.lang.UnsatisfiedLinkError : 지정된 모듈을 찾을 수 없습니다

  6. 6

    rclone으로 원격 디렉토리의 모든 파일을 삭제하는 방법은 무엇입니까?

  7. 7

    상황에 맞는 메뉴 색상

  8. 8

    SMTPException : 전송 연결에서 데이터를 읽을 수 없음 : net_io_connectionclosed

  9. 9

    정점 셰이더에서 카메라에서 개체까지의 XY 거리

  10. 10

    Windows cmd를 통해 Anaconda 환경에서 Python 스크립트 실행

  11. 11

    다음 컨트롤이 추가되었지만 사용할 수 없습니다.

  12. 12

    C #에서 'System.DBNull'형식의 개체를 'System.String'형식으로 캐스팅 할 수 없습니다.

  13. 13

    JNDI를 사용하여 Spring Boot에서 다중 데이터 소스 구성

  14. 14

    Cassandra에서 버전이 지정된 계층의 효율적인 모델링

  15. 15

    복사 / 붙여 넣기 비활성화

  16. 16

    Android Kotlin은 다른 활동에서 함수를 호출합니다.

  17. 17

    Google Play Console에서 '예기치 않은 오류가 발생했습니다. 나중에 다시 시도해주세요. (7100000)'오류를 수정하는 방법은 무엇입니까?

  18. 18

    SQL Server-현명한 데이터 문제 받기

  19. 19

    Seaborn에서 축 제목 숨기기

  20. 20

    ArrayBufferLike의 typescript 정의의 깊은 의미

  21. 21

    Kubernetes Horizontal Pod Autoscaler (HPA) 테스트

뜨겁다태그

보관