Lego EV3 Socket Program
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import lejos.hardware.Button;
import lejos.hardware.lcd.LCD;
public class Server {
private ServerSocket serverSocket = null;
public static void main(String[] args) {
new Server();
}
public Server() {
try {
// 接続処理
serverSocket = new ServerSocket(8888);
System.out.println("Launch Server: port="
+ serverSocket.getLocalPort());
Socket socket = serverSocket.accept();
System.out.println("Client Connect!: "
+ socket.getRemoteSocketAddress());
// ソケット読み込み処理
BufferedReader in = new BufferedReader(new InputStreamReader(
socket.getInputStream()));
String line;
line = in.readLine();
System.out.println(line);
System.out.println("Finished...");
Button.waitForAnyEvent();
LCD.clear();
LCD.refresh();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if (serverSocket != null) {
serverSocket.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
import java.net.Socket;
import java.net.ServerSocket;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.IOException;
public class MessageWriter{
private String host;
private int port;
private Socket socket = null;
public MessageWriter(String host, int port){
this.host = host;
this.port = port;
}
public void connect(){
try{
socket = new Socket(host, port);
System.out.println("接続しました" + socket.getRemoteSocketAddress());
}catch(IOException e){
e.printStackTrace();
}
}
public void write(String message){
try{
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader keyIn = new BufferedReader(new InputStreamReader(System.in));
out.println(message);
}catch(IOException e){
e.printStackTrace();
}
}
public void close(){
try{
if(socket != null) {
socket.close();
}
}catch(IOException e){
e.printStackTrace();
}finally{
System.out.println("切断しました。");
}
}
}
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Client {
public static void main(String args[]) {
MessageWriter messageWriter = new MessageWriter("192.168.11.37", 8888);
messageWriter.connect();
BufferedReader keyIn = new BufferedReader(new InputStreamReader(System.in));
String input;
try{
System.out.println("文字を入力してください");
input = keyIn.readLine();
messageWriter.write(input);
}catch(IOException e){
e.printStackTrace();
}
messageWriter.close();
}
}