A java.io.IOException
é uma exceção verificada em Java que ocorre durante operações de entrada e saída (I/O). Essa exceção é uma superclasse de várias outras exceções que podem ocorrer em situações que envolvem atividades de I/O, como ler e escrever arquivos, manipular dados de fluxo, interagir com sockets de rede, entre outros.
IOException
é uma classe base, e existem várias subclasses que representam situações mais específicas, como FileNotFoundException
, EOFException
, SocketException
, etc.
Verificada:
IOException
em tempo de compilação. Isso significa que, ao usar métodos que podem lançar essa exceção, você deve tratar a exceção com um bloco try-catch
ou declarar que o método pode lançá-la usando throws
.FileNotFoundException
).SocketException
.Aqui está um exemplo que demonstra como usar o tratamento de IOException
ao ler um arquivo:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class LeituraArquivo {
public static void main(String[] args) {
BufferedReader br = null;
try {
FileReader file = new FileReader("exemplo.txt");
br = new BufferedReader(file);
String linha;
while ((linha = br.readLine()) != null) {
System.out.println(linha);
}
} catch (IOException e) {
System.out.println("Ocorreu um erro ao ler o arquivo: " + e.getMessage());
} finally {
// Fechar o BufferedReader, se ele foi aberto
try {
if (br != null) {
br.close();
}
} catch (IOException e) {
System.out.println("Erro ao fechar o arquivo: " + e.getMessage());
}
}
}
}
Alguns dos principais métodos na classe IOException
incluem:
- getMessage(): Retorna uma descrição detalhada da exceção.
- printStackTrace(): Imprime a stack trace da exceção, que pode ajudar na depuração do problema.
A java.io.IOException
é uma parte essencial da manipulação de entrada e saída em Java. Compreender como e quando ela pode ocorrer ajuda a criar programas mais robustos e eficientes. Sempre que trabalhar com I/O, é importante usar tratamento de exceções apropriado para lidar com possíveis erros e garantir que seu aplicativo funcione corretamente mesmo em situações inesperadas.