试图将文件从python客户端移动到c#服务器
本文关键字:移动 服务器 客户端 python 文件 | 更新日期: 2023-09-27 18:13:18
我正试图从一台PC中的c#服务器复制jpg图像到另一台PC中的python客户端。这个想法很简单,读取图像内容:
string text = File.ReadAllText(newPath);
//or
byte[] text = File.ReadAllBytes(newPath);
和发送文本:
Byte[] sendBytes = text
networkStream.Write(sendBytes, 0, sendBytes.Length);
networkStream.Flush();
, python客户端接收文本并立即将其保存为JPG文件。
我知道这听起来很疯狂,但它确实有效!我在另一个服务器上看到它,想知道他们是怎么做到的。
我寻找了几天的解决方案,但我仍然只收到部分数据(如果文件是7.78 MB,我只收到7.74 MB)。
我已经在这里检查了重复的帖子,我发现的只是将文件从同一语言服务器传输到同一语言客户端。
我尝试使用StreamReader
和BitConverter
,但我仍然只得到图像的一部分,而不是全部。
rcvdD = socketPCP.recv(512000000) #I thought that the recv Size is causing to the problem
try:
filename = "image.jpg"
print "NAME:",filename
print "'n'r'n'rNEW FILE RECIEVED!'n'r'n'r"
f=open ('D:/Files/'+filename , 'w')
f.write(rcvdD)
except Exception,e:
print e
谢谢!
我不太擅长python,但我记得你应该保持recv()-ing在最后的缓冲区中附加每个块,直到你收到零长度的数据或错误,然后将你在缓冲区中得到的内容写入磁盘。