• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Tiago Salgado

[VB.NET] Propriedades de Ficheiros

3 mensagens neste tópico

Os ficheiros possuem propriedades que nos mostram informações como o seu tamanho, a sua data de criação, a localização, etc.

De seguida poderemos verificar como obtemos algumas informações sobre um ficheiro escolhido pelo utilizador, tais como:

- Nome

- Caminho

- Extensão

- Atributos

- Tamanho

- Data de Criação

- Data de Modificação

- Data do último acesso

Para exemplificar, criei uma nova aplicação do Windows (Windows Application) em VB.NET usando o Visual Studio 2005 contendo os seguintes objectos:

- 9 labels

- 9 textboxs

- 1 butão

- 1 groupbox

- 1 OpenFileDialog

Para fazer a divisão das coisas, tornando o código mais simples de perceber, optou-se pela criação de duas funções, uma para mostrar as propriedades do ficheiro e outra para fazer uma optimização na visualização do tamanho do mesmo.

Função MostrarPropriedaes:

Private Sub MostrarPropriedades(ByVal fileproperties As FileSystemInfo)

        txtNome.Text = fileproperties.Name.ToString
        txtCaminho.Text = fileproperties.FullName.ToString
        txtExtensao.Text = fileproperties.Extension.ToString
        txtAtributos.Text = fileproperties.Attributes.ToString
        txtCriado.Text = fileproperties.CreationTime.ToString
        txtAcedido.Text = fileproperties.LastAccessTime.ToString
        txtModificado.Text = fileproperties.LastWriteTime.ToString

    End Sub

Função MostraTamanho:

Private Sub MostraTamanho()
        Dim file As New FileInfo(txtFile.Text)
        Dim tamanho As Double
        'Fazer o import da class Math para o uso da funçao ROUND()
        If file.Length > 1024 Then
            tamanho = Round(file.Length / 1024, 0) 'passa para KB
            If tamanho > 1024 Then
                tamanho = Round(tamanho / 1024, 2) 'passa para MB
                If tamanho > 1024 Then
                    tamanho = Round(tamanho / 1024, 2) 'Passa para GB
                    txtTamanho.Text = tamanho & " GB"
                Else
                    txtTamanho.Text = tamanho & " MB"
                End If
            Else
                txtTamanho.Text = tamanho & " KB"
            End If

        Else
            txtTamanho.Text = file.Length & "Bytes"
        End If
    End Sub

A criação desta última função foi com o objectivo do utilizador ler mais facilmente o tamanho do ficheiro. A propriedade “length” devolve-nos o valor em bytes, ou seja, se o tamanho do ficheiro fosse 700MB, iria ser apresentado o valor 734003200.

Por fim, iremos associar o seguinte código ao Butão que adicionamos ao formulário:

Private Sub btnBrowseFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowseFile.Click
        openFile.Filter = "All files (*.*)|*.*" 'Filtro para os tipos de ficheiros (Mostra todos)
        'Abre uma dialogbox e no OK poe o caminho completo do ficheiro na textbox
        If openFile.ShowDialog = Windows.Forms.DialogResult.OK Then
            txtFile.Text = openFile.FileName
        End If
        'Declara a var como FileInfo (parametro com o caminho completo do ficheiro)
        Dim file As New FileInfo(txtFile.Text)

        MostrarPropriedades(file)
        MostraTamanho()

    End Sub

E temos um simples exemplo de como manipular as propriedades de ficheiros. Não esquecer também que para que tudo funcione conforme descrito neste tutorial, temos que fazer a chamada aos namespaces IO e Math.

Em anexo vai o projecto para poderem testar  ;)

Artigo na wiki em: http://wiki.portugal-a-programar.pt/dev_net:vb.net:propriedades_ficheiros

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Obrigado. Como já disse ao neon_prannock foi um bocado a correr este tutorial, pois tenho andado um bocado ocupado com uns trabalhos. Espero que um próximo seja com mais calma.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora