Como Obter a Extensão de um Arquivo

JavaBeginner
Pratique Agora

Introdução

Neste laboratório passo a passo, aprenderemos como obter a extensão de um arquivo na linguagem de programação Java. A extensão de um arquivo indica seu tipo, o que nos ajuda a diferenciar entre vários tipos de arquivos, como pdf, txt, doc, etc. Obter a extensão do arquivo é importante ao lidar com arquivos, pois ajuda a garantir que o tipo correto de arquivos seja tratado da maneira correta.

Criar um arquivo Java

Crie um novo arquivo Java usando o seguinte comando:

touch ~/project/FileExtension.java

Definir a Classe Java

import java.io.IOException;

public class FileExtension {
    public static void main(String[] args) throws IOException {

    }
}

Definir o Método Main (Principal)

Nesta etapa, definiremos o método main para aceitar um nome de arquivo do usuário e extrair sua extensão.

import java.io.IOException;

public class FileExtension {
    public static void main(String[] args) throws IOException {
        if (args.length > 0) {
            String filename = args[0];
            int index = filename.lastIndexOf(".");
            if (index > 0) {
                String extension = filename.substring(index + 1);
                System.out.println("File extension: " + extension);
            } else {
                System.out.println("No file extension found");
            }
        } else {
            System.out.println("Please provide a filename");
        }
    }
}

No bloco de código acima, estamos verificando se um nome de arquivo é fornecido pelo usuário. Se nenhum nome de arquivo for fornecido, ele solicitará ao usuário que forneça um nome de arquivo. Em seguida, usamos o método lastIndexOf() para obter o índice do último ponto no nome do arquivo, que marca o início da extensão. Se nenhum ponto for encontrado no nome do arquivo, isso sugere que o arquivo não possui extensão. Em ambos os casos, informamos o usuário através da saída da linha de comando.

Compilar o código Java

Para compilar o código Java, execute o seguinte comando no terminal:

javac ~/project/FileExtension.java

Executar o Programa Java

Para executar o programa Java, execute o seguinte comando:

java FileExtension filename.extension

onde 'filename.extension' é o caminho e o nome do seu arquivo do qual você deseja obter a extensão.

Testar o Programa Java

Vamos testar o programa executando-o várias vezes com diferentes extensões de arquivo:

java FileExtension document.txt
java FileExtension image.png
java FileExtension music.mp3

Manipulação de múltiplas extensões de arquivo

Um arquivo pode ter múltiplas extensões, separadas por ponto, como .tar.gz ou .tar.bz2. Nesses casos, podemos modificar o código no Passo 3 da seguinte forma.

import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        if (args.length > 0) {
            String filename = args[0];
            int index = filename.indexOf(".");
            int lastIndex = filename.lastIndexOf(".");
            if (index > 0 && lastIndex > 0 && lastIndex > index) {
                String extension = filename.substring(lastIndex + 1);
                System.out.println("File Extension: ." + extension);
            } else {
                System.out.println("No file extension found");
            }
        } else {
            System.out.println("Please provide a filename");
        }
    }
}

No bloco de código acima, estamos primeiro verificando se o nome do arquivo tem múltiplos pontos para identificar múltiplas extensões. Se múltiplos pontos forem encontrados, extraímos a última extensão usando o método lastIndexOf() com um +1 adicional para remover o símbolo do ponto.

Compilar o Código Java

Compile o código Java usando o seguinte comando no terminal:

javac ~/project/FileExtension.java

Testar o Programa Java

Vamos testar o programa executando-o com múltiplas extensões de arquivo da seguinte forma:

java FileExtension document.pdf
java FileExtension image.png
java FileExtension music.mp3
java FileExtension archive.tar.gz

Resumo

Neste laboratório, aprendemos como obter a extensão de um arquivo na linguagem de programação Java. Escrevemos um programa Java que aceita um nome de arquivo do usuário e extrai sua extensão para determinar seu tipo. Demonstramos como lidar com arquivos com múltiplas extensões usando os métodos indexOf() e lastIndexOf().