C♯相談室 Part21
■ このスレッドは過去ログ倉庫に格納されています
0862デフォルトの名無しさん
05/02/26 18:07:22string fileURLは"C:\sample.jpg"などの送信するファイルの場所、
string filenameは"sample.jpg"などのように送信するファイル自体のファイル名です。
ReadFile()はバイナリファイルを読み込みバイト配列を返すメソッドです。
System.Net.Sockets.UdpClient udp = new System.Net.Sockets.UdpClient(自分のポート);
byte[] sendBytes = enc.GetBytes(ファイル名 + "?" + Convert.ToBase64String(ReadFile(fileURL), 0,ReadFile(fileURL).Length));
udp.Send(sendBytes, sendBytes.Length, 相手のIPアドレス, 相手のポート);
ファイルをバイナリで読み込み、Base64に変換後、ファイル名を添付して再びバイナリに変換して送信しています。
この方法だと、軽いファイル(数十KBくらい?)なら問題なく送信できるのですが、
重いファイルはバッファが一杯になってしまい、送信できません。
パケットに分けて送信するのでしょうが、イマイチ方法が思いつかなく・・・
宜しくお願い致します。
■ このスレッドは過去ログ倉庫に格納されています