Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> UDP в Java, Как это работает...? 
:(
    Опции темы
Andyb
Дата 9.12.2004, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 170
Регистрация: 7.6.2004
Где: Lille, France

Репутация: 1
Всего: 5



В общем, в очередной раз задался вопросом написания программы под себя(делать было нечего). Решил сделать клиента для ICQ Corp(GroupWare),которым так обросла наша интрасеть(Ужасная реализация клиента!!!). Для регистрации на сервере программа должна послать UDP запрос (подробнее об этом здесь)
В документации накопал пример:
Получение времени сервера:
сервер:
Код

import java.io.*;
  import java.net.*;
  import java.util.*;

  public class TimeServer {
    final private static int DAYTIME_PORT = 13;
    public static void main(String args[]) throws
            IOException {
      DatagramSocket socket =
            new DatagramSocket(DAYTIME_PORT);
      while (true) {
        byte buffer[] = new byte[256];
        DatagramPacket packet =
            new DatagramPacket(buffer, buffer.length);
        socket.receive(packet);
        String date = new Date().toString();
        buffer = date.getBytes();
        // Get response address/port
        // for client from packet
        InetAddress address = packet.getAddress();
        int port = packet.getPort();
        packet = new DatagramPacket(buffer, buffer.length,
                address, port);
        socket.send(packet);
      }
    }
  }


клиент:
Код

import java.io.*;
  import java.net.*;

  public class GetTime {
    final private static int DAYTIME_PORT = 13;
    public static void main(String args[]) throws
            IOException {
      if (args.length == 0) {
        System.err.println
            ("Please specify daytime host");
        System.exit(-1);
      }
      String host = args[0];
      byte message[] = new byte[256];
      InetAddress address = InetAddress.getByName(host);
      System.out.println("Checking at: " + address);
      DatagramPacket packet =
          new DatagramPacket(message, message.length,
                  address, DAYTIME_PORT);
      DatagramSocket socket = new DatagramSocket();
      socket.send(packet);
      packet =
          new DatagramPacket(message, message.length);
      socket.receive(packet);
      String time = new String(packet.getData());
      System.out.println(The time at " + host + " is: " + time);
      socket.close();
    }
  }


Только вот совсем не пойму глупый smile как применить это у себя может кто подскажет а?
--------------------
 Большинство наших ошибок происходит из-за невнимательности.
PM ICQ   Вверх
Domestic Cat
Дата 9.12.2004, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 1
Всего: 172



В нете есть куча примеров с чатами, тут например:

http://www.cswl.com/whiteppr/tutorials/modified.html


--------------------

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Работа с сетью | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.