none
Lendo arquivos RRS feed

  • Pergunta

  •  

    Olá pessoal preciso de ajuda hehehe

     

    Já olhei alguns tópicos do fórum mas nao consegui encontrar algo que realmente me ajudasse.

     

    Ok eu preciso ler arquivos de um diretório isso em VB .Net, ok isso eu já consegui fazer porém eu preciso só do nome do arquivo e o que eu consegui é ler a estrutura de diretórios inteira.

     

    Estou o usando o seguinte código

     

     

    For Each nome As String In Directory.GetFiles(Application.StartupPath, "*.*")

    arq = nome

    Next

     

    Lembrando pessoal preciso apenas o nome do arquivo

     

    Obrigado

    segunda-feira, 4 de agosto de 2008 19:25

Todas as Respostas

  • Tem dois modos, o antigo:

    Dim P As String = Dir$("C:\*.TXT")

    Do
      Dim Nome As String = P

      P = Dir$()
     
      If P = String.Empty Then
        Exit Do
      End If
    Loop

    Ou filtrando seu código atual:
                System.IO.Path.GetFileName()
                System.IO.Path.GetFileNameWithoutExtension()

    segunda-feira, 4 de agosto de 2008 19:58
  • Amarildo, nao conheço muito vb.net, mas voce pode fazer uso de "LastIndexOf" e Substring.

     

    Public Function GetFileNameFromPath(ByVal path As String) As String
       Try
           Return path.Substring(path.LastIndexOf("\") + 1)
       Catch ex As Exception
           ' error
           Return ""
       End Try
    End Function

     

     

    Veja o site:

     

    http://dotnetref.blogspot.com/2007/07/path-and-filename-decomposition.html

     

    Abraços

     

    Estevam

    segunda-feira, 4 de agosto de 2008 20:00
  • Desculpe, Luiz Estevam, mas a solução apontada é meio inútil quando o próprio .Net framework já possui mecanismos para isso. Além do que, outras plataformas não utilizam "\" como separador de pastas (Linux e MacOS por exemplo usam "/"). E sim, com Mono, .Net é multiplataforma.

    De forma alguma quero prejudicar a sua resposta... só alertando para não reinventar a roda e manter padrão para interoperabilidade entre plataformas.
    segunda-feira, 4 de agosto de 2008 20:14
  • JC é isto mesmo, é que nao tenho muito conhecimento em .NET ainda, e ainda o pouco que conheço é em C#, realmente desconfiei que ja existia algo pronto. Valeu =)

     

    Abraços

     

    Estevam

    quarta-feira, 6 de agosto de 2008 13:55
  •  Luiz Estevam wrote:
    ---
    **** Se a reposta foi útil, então não esqueça de marca-lá. ***


    Wink
    quarta-feira, 6 de agosto de 2008 14:33
  • rsrsrs a dúvida nao era minha, mas vou lhe dar esse pontinho

    Afinal poderia ser uma dúvida futura né

     

    Abraço

     

    Estevam

    quarta-feira, 6 de agosto de 2008 14:36