- ベストアンサー
テキストファイル( .txt )の送信方法
学校の無線LANに2台のノートパソコンを接続して、データの通信実験のようなことをやろうと考えています。 パソコンAでプログラムを実行し、結果をテキストファイル( .txt形式) に出力。そのテキストファイルを "何らかの方法" でパソコンBに送り、パソコンB側のプログラムでそれを読み取り、実行結果を表示したいと考えています。 プログラムは、C言語でやろうと思ってます。テキストファイルを送るよい方法をご存知でしたら、教えていただきたいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
WINAPIが使えれば簡単にできます。 http://yonex1.cis.ibaraki.ac.jp/~yonekura/2002kadai/lecture03.html 実際にはもっとパッケージ化されたWINAPIがあったと思います。
その他の回答 (2)
- beefisdead
- ベストアンサー率63% (92/145)
なるほど、Winなんですか。Windowsだと選択の幅が一気に狭まるんですよね。真面目な実験ならUNIX系のOSを使った方が通信系はやりやすいですよ。 WindowsでCを使って通信するならWinSockを使うのが正攻法で、かついちばん手っ取り早いです。 WinSockが使用する関数はsocketやbindなどと言ったあたり(socket,bindはUNIX用の命令で、WinSockにはそれらに対応する関数があります)で、通信ソフトを実装するなら基本的にはこのレイヤの命令を使います。詳細は検索でどうぞ。 ただ、Cとソケットで真面目に書くと準備に300行くらいは必要なので、面倒と言えば面倒です。PerlやRuby、Java等の適当な上位ライブラリを使用した方がプログラムが圧倒的に短くて済みますので、その辺を探してみる方が楽かも知れません。 探す際の注意点としては、raw socketは避けること、ですね。あとは何を探しても、socketよりは上のレイヤのことをやってるはずです。 とか言ったものの、そもそもWindowsで文書を共有するだけなら、同じ無線LAN上で同じワークグループに属していれば共有フォルダを通じてファイルのやりとりができるんでは。 あとはSkypeとか一般的なメッセンジャーでも出来るし、あえてプログラム書かなくてもいい気がします。
お礼
回答ありがとうございます。 300行はきついですね…。Javaなどのライブラリとソケットについて検索してみます。あと、共有フォルダについても検討してみます。
- beefisdead
- ベストアンサー率63% (92/145)
補足要求です。 ・OSは何? ・言語はC以外は使う気はない? ・FTPやscp等の、既に存在するアプリケーションやコマンドではいけない? ・どの程度原始的な作業がしたい? ・時間は測定する? Cを使うって言う時点でBerkley Socketを使うだろうなとは思うのですが、もしかしたらそれ以外の方法が適しているかも知れませんので、よろしくお願いしますね。
補足
回答ありがとうございます。 ・OSは Windows です。 ・言語は何でも良いのですが、CとJava 以外はあまり使ったことがありません。 ・すでに存在するアプリケーションやコマンドでもいいです。パソコンAからパソコンBにテキストファイルを渡すことができれば、大丈夫です。 ・今回は時間の測定は行いません。 ほかに必要な補足がありましたら、遠慮なく要求してください。
お礼
回答ありがとうございます。 WINAPI さっそく使ってみます。