Программирования сетевых взаимодействий в Java. Сухов С.А. - 38 стр.

UptoLike

Составители: 

38
public void connect() {
try{
//Устанавливаем соединение с локальным хостом
InetAddress addr = InetAddress.getLocalHost();
ss = new Socket(addr, 220);
//Получаем потоки ввода_вывода
in = new BufferedReader(new InputStreamReader(ss.getInputStream()));
out = new BufferedWriter(new OutputStreamWriter(ss.getOutputStream()));
//Запускаем новый подпроцесс
process1.start();
//Открываем файл
fw = new FileWriter("messageCli.txt");
}
catch(Exception e){
System.out.println("ошибка ");
}
}
Обратите внимание, что в данном примере мы устанавливаем соединение
с локальным хостом, получая его Интернет-адрес с помощью метода
getLocalHost() класса InetAddress. В
случае установления соединения с
удаленным хостом, нам потребовалось бы вызвать метод
getByName("наименование хоста"). Также обратите внимание, что, мы
открываем сокетное соединение по порту с номером 220, именно с тем номером
порта, с которым создавали серверный сокет в серверной части приложения.
Реализуем метод run() интерфейса Runnable.
public void run(){
String s1; //строка для хранения текущего
сообщения
try{
//В цикле читаем данные из потока
while(true){
//записываем данные из потока в строку
s1 = in.readLine();
//Отображаем в компоненте List
list1.add(s1);
//Записываем в файл
fw.write(s1);
}
}
catch(Exception e){}
}
Реализуем методы-обработчики события ActionPerformed для
компонентов-кнопок «Connect», «Send» и «Close». По щелчку на кнопке