ある PC の ac# サーバーから別の PC の Python クライアントに jpg 画像をコピーしようとしています。アイデアは、単に画像コンテンツを読み取ることです。
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
たが、それでも画像のすべてではなく一部しか取得できません。
受け取った画像を保存する python コードは次のとおりです。
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
ありがとう!