Hoje em dia muitos programadores utilizam uma maneira ruim de pegar o nome, extensão do arquivo e nome da pasta. Existe no framework uma maneira de pegar todos estes dados de forma fácil e simples.

                O que vou mostrar aqui pode ser utilizado em WebService, páginas .aspx e em outras plataformas usando o C#.NET.

Tags: C#.NET, Visual Studio 2010, System.IO.Path

                Quando iniciei o documento falando de maneira errada para pegar a extensão do arquivo, quis dizer que muitos usam o método substring(0, arquivo.length – 3). Essa maneira funciona? Sim, funciona, mas existe uma maneira mais rápida para fazer isso usando o próprio framework da Microsoft disponível (Code 1).

 

String extensao = arquivo.substring(0, arquivo.Length – 3);

 

Code 1

                Esses dias precisei fazer algumas coisas com artigos físicos e arquivos da web. Notei que em vários fóruns desenvolvedores falando para utilizar o substring. Acredito que pode ser por falta de conhecimento do framework .NET, pois o método está pronto.

                A mesma forma funciona para pegar o nome do arquivo e o nome da pasta.

Pegando a extensão do arquivo

                Para pegar a extensão do arquivo, basta utilizar o método GetExtension passando o caminho da imagem ou do arquivo. (Code 2)

 

string extensao = Path.GetExtension(CaminhoImagem);

Code 2

                A variável chamada CaminhoImagem possui o valor do caminho físico ou url com barras , funciona dos dois jeitos.

Pegando o nome do arquivo sem a extensão

                Para pegar o nome do arquivo sem a extensão basta utilizar outro método do próprio framework .NET. (Code 3)

 

string nomeArquivo = Path.GetFileNameWithoutExtension(CaminhoImagem);

 

Code 3

                De acordo com o Code 3, o nome do arquivo retornado e armazenado dentro da string virá sem a extensão. Por exemplo: Arquivo.doc, o resultado será Arquivo.

Pegando o nome do diretório

                Para pegar o nome do diretório, basta utilizar outro método específico do próprio framework .NET.  (Code 4)

 

string pasta = Path.GetDirectoryName(CaminhoImagem);

 

Code 4

                O que é importante lembrar antes de começar a desenvolver, é que precisa fazer a importação no início da classe. A classe que precisa importar é a System.IO. Veja o Code 5.

 

using System.IO;

 

Code 5

                Bom, essa foi apenas algumas dicas para trabalhar com arquivo do tipo imagem ou qualquer outro tipo. Todos os testes feitos foram com arquivo do tipo txt, tif e jpg. Espero que tenha gostado e qualquer dúvida pode entrar em contato.

This article was originally written by:
Maurício Júnior
MCP, MCAD, MVP Microsoft
www.mauriciojunior.org
blog.mauriciojunior.org