详解Java中IO流的读写操作及异常处理
Java中的IO流(Input/Output Streams)用于操作系统和应用程序之间进行数据的传输。以下是一些主要的读写操作以及异常处理:
文件读写:
FileInputStream
:从文件读取字节。FileOutputStream
:向文件写入字节或字符(需要转换)。
错误处理:
try (FileInputStream fis = new FileInputStream("file.txt");
FileOutputStream fos = new FileOutputStream("output.txt")) {
byte[] buffer = new byte[1024];
int count;
while ((count = fis.read(buffer))) != -1) {
fos.write(buffer, 0, count);
}
} catch (IOException e) {
System.err.println("Error reading/writing file: " + e.getMessage());
e.printStackTrace();
}
网络读写:
SocketInputStream
:从网络套接字读取数据。SocketOutputStream
:向网络套接字写入数据。
错误处理:
try (Socket socket = new Socket("localhost", 1234));
(SocketInputStream sIn = new SocketInputStream(socket));
(SocketOutputStream sOut = new SocketOutputStream(socket))) {
byte[] buffer = new byte[1024];
int count;
while ((count = sIn.read(buffer))) != -1) {
sOut.write(buffer, 0, count);
}
} catch (IOException e) {
System.err.println("Error reading/writing network socket: " + e.getMessage());
e.printStackTrace();
}
字符流与字节流的转换:
- 使用
BufferedReader
和BufferedWriter
进行字符流和字节流的转换。
- 使用
异常处理:
- 在读写操作中,可能出现各种IO异常,如IOException、FileNotFoundException等。
- 应确保对这些异常进行捕获和处理,以保证程序不会因异常而中断运行。
还没有评论,来说两句吧...