JavaI/O函数:如何读取和写入文件、网络流等外部数据源。
发布时间:2023-06-08 18:19:07
Java是一种面向对象的编程语言,它提供了大量的函数和类来处理输入输出。Java I/O函数是Java语言中用于处理输入输出数据的一组函数。Java I/O函数可以帮助我们读取和写入文件、网络流等外部数据源。
Java I/O函数可以读取各种类型的文件,包括文本文件、二进制文件等。读取文件的方式有两种:一种是按字节读取,一种是按字符读取。按字节读取使用InputStream类和OutputStream类,按字符读取使用Reader类和Writer类。以下是Java I/O函数读取文件的示例:
按字节读取文件:
try {
InputStream fis = new FileInputStream("file.txt");
int bytes;
while ((bytes = fis.read()) != -1) {
System.out.print((char) bytes);
}
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
按字符读取文件:
try {
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
String line = reader.readLine();
while (line != null) {
System.out.println(line);
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
Java I/O函数还可以写入数据到文件中。要写入数据到文件中,我们也可以使用OutputStream类和Writer类。以下是Java I/O函数写入文件的示例:
按字节写入文件:
try {
OutputStream fos = new FileOutputStream("file.txt");
String str = "Hello, World!";
byte[] bytes = str.getBytes();
fos.write(bytes);
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
按字符写入文件:
try {
BufferedWriter writer = new BufferedWriter(new FileWriter("file.txt"));
writer.write("Hello, World!");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
Java I/O函数还可以处理网络流数据。Java I/O函数提供了Socket类和ServerSocket类来处理TCP/IP协议的数据。以下是Java I/O函数处理网络流的示例:
客户端代码:
try {
Socket socket = new Socket("localhost", 1234);
OutputStream os = socket.getOutputStream();
String str = "Hello, World!";
byte[] bytes = str.getBytes();
os.write(bytes);
os.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
服务端代码:
try {
ServerSocket server = new ServerSocket(1234);
Socket socket = server.accept();
InputStream is = socket.getInputStream();
byte[] bytes = new byte[1024];
int len;
while ((len = is.read(bytes)) != -1) {
System.out.println(new String(bytes, 0, len));
}
is.close();
socket.close();
server.close();
} catch (IOException e) {
e.printStackTrace();
}
总结来说,Java I/O函数是Java语言中用于处理输入输出数据的一组函数。Java I/O函数可以帮助我们读取和写入文件、网络流等外部数据源。通过示例代码,我们可以更好地理解Java I/O函数的使用方法。
