• ベストアンサー

バイナリファイルを転送したいのですが

お世話になります socketを用いてサーバへファイルを転送したいのですが、うまくいきません。 以下ソースからの抜粋です BufferedOutputStream out = new BufferedOutputStream(socket.getOutputStream()); BufferedInputStream in = new BufferedInputStream(new FileInputStream("test.txt")); int c; while((c = in.read()) != -1 ){  out.write(c); } 上記のようなコーディングでは転送できないのでしょうか? 出来ればファイルから1024バイトずつ読み込んで1024バイトずつ出力していき、ファイルの終端まで繰り返す処理をしたいのですが、よい方法をご存知でしたら教えていただけないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.3

#1です。 >プロトコルはTCPです。 わかりました。 あなたは、通信の基礎知識が全くないのではないでしょうか? その状態で、通信プログラムを作るのは難しいので、 とりあえず参考URLの連載を最後まで読んでみてください。 そうすれば、何が問題なのかわかると思いますよ。 *この知識は、通信をするには常識なので、頑張ってマスターして下さいね。 http://www.atmarkit.co.jp/fnetwork/rensai/netpro00/netpro01.html

その他の回答 (2)

回答No.2

受け手側の事も重要になりますから、いったいどういったサーバープログラムに対しての送信処理なのでしょうか? そこを書かなければ回答のしようがないと思いますね。 ちなみに、out.writeの後に改行(lfもしくはcrlf)を入れてみてはどうですか?

  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.1

補足要求です。 1.プロトコルはなんですか? 2.どのようにうまくいきませんか?

dp9
質問者

補足

補足させていただきます プロトコルはTCPです。 状況としましてはファイルを送ってもサーバからOKが返ってこないというものです。 よろしくお願いします。

関連するQ&A

専門家に質問してみよう