- ベストアンサー
異なる言語間でのソケット通信について
簡単なネットワークプログラムを作成して、ソケット通信の確認をしています。 クライアントとサーバが両方ともにC++の場合と、両方ともにJavaの場合で、正常に通信が行われていることは確認しました。 そこで、クライアントでC++のプログラムを動かし、サーバでJavaのプログラムを動かしてみたのですが、うまくいきませんでした。 (ポート番号を合わせたので、相互接続は出来てるみたいですが、データが渡ってきませんでした。OSはクライアント/サーバともに、Windowsです。) 言語が異なる場合の、ソケット通信について良いサイトをご存知でしたら、教えていただけないでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
言語が異なってもソケット通信は何も変わらないです。違うのは流れるデータです。 本当にデータは流れていませんか? パケットをキャプチャして確認してみましたか? C++側でもJava側でも1バイトづつデータを書き込んで読み込んでみましょう。きっとデータがきているはず。 サーバプログラムを起動しておいて、コマンドプロンプトから”telnet サーバホスト名 ポート番号”で接続してみるのも良い手です。
その他の回答 (2)
- dekopa-
- ベストアンサー率42% (161/378)
回答No.2
どんなデータを渡したんですか? 受信したバイト数、およびバイナリレベルでの比較はしましたか? 言語が違っても、通信方法は一緒です。
noname#49428
回答No.1
単なるソケット通信ならば、言語は関係ないです。 うまくいかなかった原因はつきとめましたか?
補足
回答ありがとうございます。 皆さんの回答を見ると、言語は関係ないみたいですね。 じゃあ、データは来てるけどプログラムが反応してないということ? 流れるデータの形式が違う? 後でパケットキャプチャして確認してみます。