gpt4 book ai didi

java - 如何使用 python 通过套接字将整数发送到 Java 应用程序?

转载 作者:行者123 更新时间:2023-11-28 20:09:42 24 4
gpt4 key购买 nike

我有一个 Python 客户端发送数据(前面是数据长度消息):

s = socket.socket()
s.connect((host, port))
data = 'hello world'
s.sendall('%16s' % len(data)) #send data length
s.sendall(data) #send data
s.close()

以及接收数据的 Java 服务器。服务器使用 DataInputStream.readInt()在读取数据之前读取数据长度。然而,我似乎得到了 readInt() 返回的非常大的数字。有什么问题?

最佳答案

Java 需要整数的二进制表示。您可以使用 struct生成二进制表示的模块。

在您的情况下,这将是:

import struct
s.sendall(struct.pack('i', len(data)))

还要确保使用正确的 byte order . Java 可能需要网络字节顺序。

关于java - 如何使用 python 通过套接字将整数发送到 Java 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10228927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com