Precisando de freelancer em C, C++, Java, Delphi, PHP, JavaScript, C#, VB.NET, JSP, Servlets, JSF, etc? Fale comigo: osmar@arquivodecodigos.net
Você está aqui: Inicio -> Dicas e Truques -> Java -> Internet, Rede e E-Mail - Exercício Resolvido 2
Internet, Rede e E-Mail - Exercício Resolvido 2
Esta dica foi visualizada 2407 vezes

Url reduzida: http://www.arquivodecodigos.net/dicas/3388

Categoria: Exercícios Resolvidos (Algorítmos Resolvidos)
Sub-Categoria: Internet, LAN e E-Mail [Veja dicas relacionadas]

Meu site é muito confuso mesmo. Se até agora não encontrou o que procura, experimente minha pesquisa interna abaixo. É provável que a resposta para a sua pergunta esteja em uma das mais de 5.000 páginas do site.
Pesquisa:

Internet, Rede e E-Mail - Exercício Resolvido 2

Pergunta/Tarefa:

Escreva um programa Java console ou GUI que permita varrer as portas de 0 até 1024 na máquina local e informar quais portas possuem algum serviço ouvindo requisições. Por exemplo, ao executar seu código, um resultado parecido com o que temos abaixo pode ser reproduzido:

Pesquisando pela porta: 23
Pesquisando pela porta: 24
Pesquisando pela porta: 25
Há um servidor na porta 25 da máquina localhost
Pesquisando pela porta: 26
Pesquisando pela porta: 27 
Dica: A forma mais simples de realizar esta tarefa é usando a classe Socket.

Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

package estudos;

import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;

public class Main {
  public static void main(String[] args) {
    Socket socket; // vamos declarar um objeto da classe Socket
    String host = "localhost"; // define o nome da máquina host

    // vamos varrer as portas que vão de 0 até 1024 (demora um pouco)
    for (int i = 0; i < 1024; i++) {
      try {
        System.out.println("Pesquisando pela porta: " + i);
        // vamos tentar construir um soquete nesta porta
        socket = new Socket(host, i);
        System.out.println("Há um servidor na porta " + i + " da máquina " + host);
      }
      catch (UnknownHostException e) { // não foi possível encontrar a máquina host
        System.out.println("Não foi possível encontrar a máquina host: " + e);
        break;
      }
      catch (IOException e) {
        // não há um servidor nesta porta...vamos ficar em silêncio
      }
    }
  }
}

Veja que, neste exercício, podemos ter o surgimento de duas exceções: UnknownHostException (a máquina informada não pôde ser encontrada) e IOException (houve erro de entrada e/ou saída). Por esta razão, é uma boa idéia envolver o código em um bloco try...catch.
 
Digitando 2011 - O programa de digitação mais usado em todo o Brasil
Patrocinador oficial: O Digitando 2011 é um dos programas para a prática de digitação mais usados no Brasil. É o preferido das franquias DATA BYTE, Microlins, MICROCAMP e PREPARA. Faça o download e conheça-o você também. O Digitando é o único no Brasil que permite a execução de músicas e rítmos de bateria enquanto se pratica a digitação.
Veja mais Dicas & Truques na sub-categoria: Internet, LAN e E-Mail
Veja mais Dicas & Truques de outras linguagens
Fechar
Osmar J. Silva - Criador do site Arquivo de CódigosVocê está precisando de freelance para ajudá-lo em seus códigos?
Meu nome é Osmar J. Silva. Sou criador deste site, programador e atuo como freelancer desde 2001.

Minha especialidade é C/C++. Mas posso ajudá-lo em Java, Delphi, PHP, Python, Ruby, Qt, wxWidgets, MySQL e algumas outras linguagens e ferramentas. Clique aqui e fale comigo por telefone, e-mail ou MSN.
Encanto Art & Doces - Goiânia-GO
Encanto Art & Doces - Goiânia-GO
Assinantes
Por favor, informe os dados abaixo para acessar sua conta:
Usuário:
Senha:
 
Esqueci minha senha
Quero criar uma conta
Veja mais Dicas & Truques de Java
 
Dicas e truques de Java
Dicas e truques de C++
Dicas e truques de Delphi
http://www.arquivodecodigos.net
2000 - 2013 - Todos os direitos reservados a Osmar J. Silva
Todo o conteúdo deste site, quando não devidamente observado, pertence a seus idealizadores e não
poderá ser usado para outras finalidades senão estudo e aprimoramento de técnicas de programação.

Posso copiar o conteúdo do site e colocar em meu site ou blog? Pode sim, desde que você coloque um link e referência
ao meu site. Caso não faça isso meu advogado fará todo o possível para deixar sua conta bancária com algumas centenas
de Reais a menos.

Fale Conosco: (62) 3261-7018 / (62) 8185-0734
E-Mail: suporte@recomende.com
MSN: osmar@recomende.com (só para negócios, por favor)
Perfil no LinkedIn: http://br.linkedin.com/pub/osmar-j-silva-silva/8/94a/630

Para me contratar como freelancer ligue: (062) 3261-7018 / (62) 8185-0734

Desenvolvedor Responsável: Osmar J. Silva
Fechar