"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como resolver o erro “O sistema não consegue encontrar o caminho especificado” ao acessar arquivos em Java?

Como resolver o erro “O sistema não consegue encontrar o caminho especificado” ao acessar arquivos em Java?

Publicado em 2024-11-06
Navegar:776

How to Resolve \

Resolvendo problemas de caminho de arquivo em Java ao encontrar "O sistema não consegue encontrar o caminho especificado"

Em seu projeto Java, você encontra um erro ao tentar acessar um texto arquivo de um caminho relativo especificado. Este erro surge da incapacidade da classe java.io.File de localizar o caminho designado.

Para resolver esse problema, é recomendável recuperar o arquivo do caminho de classe em vez de depender do sistema de arquivos. Ao fazer isso, você elimina a necessidade de caminhos relativos e garante que o arquivo seja obtido independentemente do diretório de trabalho atual.

Supondo que o arquivo ListStopWords.txt resida no mesmo pacote que a classe FileLoader, o seguinte o código demonstra como obter o arquivo do caminho de classe:

URL url = getClass().getResource("ListStopWords.txt");
File file = new File(url.getPath());

Alternativamente, se seu único objetivo é adquirir um InputStream para o arquivo, você pode utilizar o seguinte:

InputStream input = getClass().getResourceAsStream("ListStopWords.txt");

Essa abordagem é preferida porque acomoda várias representações de sistema de arquivos, incluindo sistemas de arquivos virtuais e caminhos de rede.

Além disso, se o arquivo é um arquivo de propriedades contendo pares de valores-chave, você pode carregá-lo diretamente do InputStream:

Properties properties = new Properties();
properties.load(getClass().getResourceAsStream("ListStopWords.txt"));

Observe que se você estiver acessando o arquivo de dentro de um contexto estático, você deve substituir getClass() por YourClass.class ( onde YourClass representa o nome da sua classe).

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3