メモ、備忘録、その他雑記を記載します。
ただし、このHPに記載している情報を利用した結果 損失・損害等が発生したとしても筆者は責任を持ちません。
javaのsocket通信 クライアントプログラムのサンプルです。
関連:サーバプログラムサンプル
import java.io.*;
import java.net.*;
/**
* クライアントクラス
*
* @author
* @version 1.0
*/
public class Cl {
static final String strHowTo = "help: java Cl host port";
/**
* スタートアップ
*/
public static void main(String[] args) {
// 引数チェック
if (args.length != 2) {
System.err.println( strHowTo );
return;
}
try {
// ソケットを作成してサーバに接続する。
Socket socket = null;
try {
socket = new Socket(args[0], Integer.parseInt(args[1]));
} catch (ConnectException e) {
System.out.println("connectできませんでした");
return;
}
System.out.println("socket生成");
socket.setTcpNoDelay(true);
// メッセージ送信
BufferedWriter bufwriter = new BufferedWriter(
new OutputStreamWriter(socket.getOutputStream()));
bufwriter.write("Send cl -> sv");
bufwriter.newLine();
bufwriter.flush();
System.out.println("文字列送信処理");
// 文字列受信処理
InputStream is = socket.getInputStream();
BufferedReader bufreader
= new BufferedReader(
new InputStreamReader(is));
System.out.println("入力ストリーム取得");
// 入力されるまで待つ
while (is.available() == 0) {
Thread.sleep(10);
continue;
}
String line = null;
line = bufreader.readLine();
System.out.println(line);
System.out.println("文字列受信処理");
// 後処理
bufreader.close();
bufwriter.close();
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
関連:サーバプログラムサンプル
import java.io.*;
import java.net.*;
/**
* クライアントクラス
*
* @author
* @version 1.0
*/
public class Cl {
static final String strHowTo = "help: java Cl host port";
/**
* スタートアップ
*/
public static void main(String[] args) {
// 引数チェック
if (args.length != 2) {
System.err.println( strHowTo );
return;
}
try {
// ソケットを作成してサーバに接続する。
Socket socket = null;
try {
socket = new Socket(args[0], Integer.parseInt(args[1]));
} catch (ConnectException e) {
System.out.println("connectできませんでした");
return;
}
System.out.println("socket生成");
socket.setTcpNoDelay(true);
// メッセージ送信
BufferedWriter bufwriter = new BufferedWriter(
new OutputStreamWriter(socket.getOutputStream()));
bufwriter.write("Send cl -> sv");
bufwriter.newLine();
bufwriter.flush();
System.out.println("文字列送信処理");
// 文字列受信処理
InputStream is = socket.getInputStream();
BufferedReader bufreader
= new BufferedReader(
new InputStreamReader(is));
System.out.println("入力ストリーム取得");
// 入力されるまで待つ
while (is.available() == 0) {
Thread.sleep(10);
continue;
}
String line = null;
line = bufreader.readLine();
System.out.println(line);
System.out.println("文字列受信処理");
// 後処理
bufreader.close();
bufwriter.close();
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
PR
コメントを書く