NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!

UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI

Você está em: PrincipalTutoriaisLanodecastro : Arquivosediretorios001
Quer receber novidades e e-books gratuitos?

FILTRO DE TUTORIAIS:


Trabalhando com Arquivos e Diretórios – Parte I

 

Olá Pessoal.

 

Estaremos dando início hoje a mais uma seqüência de tutorias. Desta vez iremos aprender algumas maneiras de trabalhar com arquivos e diretórios onde um possível WebSite esteja hospedado.

 

O Namespace System.IO implementa diversas classes, onde de forma simples, conseguimos executar procedimentos costumeiros de um sistema operacional. Nesta seqüência iremos abordar algumas destas diversas classes.

 

Abra um novo projeto e dê a ele o nome de Diretorios_Arquivos. Utilizaremos a linguagem VB.Net, mas poderá ser feitos em C# ou J# tranquilamente.

 

 

O nosso primeiro desafio será listar os subdiretórios do diretório raiz do site, no caso o wwwroot.

 

Apague o arquivo WebForm1.aspx e crie um novo chamado ListagemDeDiretorios.aspx

 

Abra o arquivo criado acima, e insira um controle do tipo DataGrid com o nome dgDiretorios. Fique à vontade para formatá-lo.

 

 

Iremos popular este DataGrid com os nomes e outros atributos dos subdiretórios que iremos listar. Qualquer outro objeto que suporte o DataBindings pode ser usado, exemplo o ListBox ou o DataList.

 

Optei pelo DataGrid porque ele têm por característica a possibilidade de gerar as colunas automaticamente. Assim, logo se precisar mostrar apenas um dos atributos dos diretórios listados, já saberei qual nome referenciar.

 

Já podemos agora desenvolver o código para listar os subdiretórios. Clique no botão View Code e digite o seguinte trecho de código:

 

Private Sub ListarDiretorios()

        Dim dir As New DirectoryInfo("C:\Inetpub\wwwroot")

        dgDiretorios.DataSource = Dir.GetDirectories()

        dgDiretorios.DataBind()

    End Sub

 

Chame esta rotina no Page_load:

 

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        ListarDiretorios()

    End Sub

 

Vamos conferir o resultado:

 

 

Vejam que o DataGrid exibe informações detalhadas sobre cada diretório listado.

 

Bem, agora que já sabemos o nome dos atributos que podemos referenciar, vamos ao seguinte desafio:

 

“Temos um ListBox populado com todos os Subdiretórios da pasta wwwroot. Ao lado temos um TexBox com um botão chamado CriarDiretório e mais um Label para emitir a mensagem de confirmação do comando. Acho que deu para imaginar a interface, certo? Crie um novo WebForm chamado CriandoDiretorios.aspx e  acompanhe a imagem abaixo:

 

 

Para acompanhar esta aplicação você deve inserir os seguintes WebControls:

 

ListBox – ID=lstDiretorios.

 

Label – ID=lblResposta.

 

TextBox – ID=txtNome

 

Button – ID=btnCriar – Text=Criar Diretório.

 

O código deverá popular a lista de subdiretórios inicialmente, digite o código a seguir:

 

Private Sub PopularSubDiretorios()

        Dim dir As New DirectoryInfo("C:\Inetpub\wwwroot")

        lstDiretorios.DataTextField = "Name"

        lstDiretorios.DataSource = dir.GetDirectories()

        lstDiretorios.DataBind()

    End Sub

 

Chame este procedimento no Page_load da seguinte forma:

 

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        If Not Page.IsPostBack Then

            PopularSubDiretorios()

        End If

    End Sub

 

O próximo passo é criar o código para a criação do diretório, e neste trecho de código algumas validações deveram ser feitas para que não gere possíveis erros. Digite o código a seguir:

 

Private Sub CriarSubDiretorio()

        'Verificando se algum subdiretório foi selecionado.

        If lstDiretorios.SelectedIndex < 0 Then

            lblResposta.Text = "Nenhum Subdiretório foi selecionado!"

        Else

            'Verificando se o nome do novo diretório foi digitado

            If txtNome.Text = String.Empty Then

                lblResposta.Text = "Nenhum nome para o novo diretório foi digitado!"

            Else

                'Após todas as verificações, o diretório é criado

                Dim dir As New DirectoryInfo("C:\Inetpub\wwwroot")

                'O método CreateSubdirectory é quem cria o novo subdiretório

                dir.CreateSubdirectory(lstDiretorios.SelectedItem.Text & "/" & txtNome.Text)

                lblResposta.Text = "O novo diretório foi criado!"

                txtNome.Text = String.Empty

            End If

        End If

    End Sub

 

Comentando um pouco sobre o código acima...

 

Após todas as validações serem feitas, usamos o método CreateSubdirectory para criar o subdiretório. Como argumento, passamos o nome do subdiretório que irá armazenar o novo diretório mais o nome do novo diretório.

 

Vejam que com poucas linhas de código, criamos uma aplicação extremamente útil e que em qualquer outro ambiente de programação para a Web levaria um boa carga de código de tempo de desenvolvimento.

 

Isto prova mais uma vez, que a grande aposta da Microsoft na arquitetura .Net está voltada para a produção e segurança.

 

Só para garantir, vamos testar:

 

 

Teste sem selecionar o Subdiretório

 

 

Teste sem digitar o nome do novo diretório

 

Digitando o  nome....

 

 

Diretório criado com sucesso...

 

Veja ele aí....

 

Valeu pessoal,

 

Na próxima tem muito mais...

 

Lano de Castro

 

lanodecastro@hotmail.com

 

Quer receber novidades e e-books gratuitos?

Cursos Online

  • Banco de Dados
  • Carreira
  • Criação/Web
  • Excel/Projetos
  • Formação
  • + Todas as categorias
  • Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

    Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

    Todos os direitos reservados, Júlio Battisti 2001-2020 ®

    [LIVRO]: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2010 - PASSO-A-PASSO

    APRENDA COM JULIO BATTISTI - 1124 PÁGINAS: CLIQUE AQUI