Byte 배열 형태의 정보를 보내고, 받을 때 접근 방식
1) Network에서 16byte의 날짜 정보가 2byte 단위의 Byte Array로 전달되었을 때 받아들이기
dateData = client_socket.recv(16)
wYear = int.from_bytes(dateData[0:2], byteorder='little')
wMonth = int.from_bytes(dateData[2:4], byteorder='little')
wDayOfWeek = int.from_bytes(dateData[4:6], byteorder='little')
wDay = int.from_bytes(dateData[6:8], byteorder='little')
wHour = int.from_bytes(dateData[8:10], byteorder='little')
wMinute = int.from_bytes(dateData[10:12], byteorder='little')
wSecond = int.from_bytes(dateData[12:14], byteorder='little')
wMilliseconds = int.from_bytes(dateData[14:16], byteorder='little')
2) 시간 정보를 2byte단위로 잘라 byte Array에 담아 전송할 때.(수신 측의 Byte order는 Little이다.)
current_time = datetime.now()
sendData =int.to_bytes(current_time.year, 2, byteorder='little')
sendData+=int.to_bytes(current_time.month, 2, byteorder='little')
sendData+=int.to_bytes(current_time.weekday(), 2, byteorder='little')
sendData+=int.to_bytes(current_time.day, 2, byteorder='little')
sendData+=int.to_bytes(current_time.hour, 2, byteorder='little')
sendData+=int.to_bytes(current_time.minute, 2, byteorder='little')
sendData+=int.to_bytes(current_time.second, 2, byteorder='little')
sendData+=int.to_bytes(int(current_time.microsecond/1000), 2, byteorder='little')
'작업 > Python' 카테고리의 다른 글
Python "exe" 실행 파일 만들기 (3) | 2021.07.22 |
---|---|
Python - 기본 문법 예제 (1) (0) | 2021.07.20 |
Visual Studio Python & Tensorflow 설치 (4) | 2021.07.12 |