Java中常用的IO函数使用方法
Java中,输入输出流(Input/Output Stream)是非常常用的一个概念,它们是用来处理输入和输出的。输入输出流通常被称作IO流,分别用于从外部设备(如文件、网络)读取数据和向外部设备写入数据。Java提供了多种IO函数,本文将对Java中常用的IO函数使用方法进行简要介绍。
一、文件IO
对于Java中的文件读写,主要通过File、FileInputStream、FileOutputStream、BufferedInputStream、BufferedOutputStream等类来实现,其中File类提供了对文件系统中的文件进行读写和其他操作的支持。
1. 读取文件内容
通过FileInputStream和read()方法可以读取文件内容,如下代码:
FileInputStream fis = new FileInputStream("D:/test.txt");
byte[] bytes = new byte[1024];
fis.read(bytes);
String content = new String(bytes);
System.out.println(content);
2. 写入文件内容
通过FileOutputStream和write()方法可以将内容写入文件中,如下代码:
FileOutputStream fos = new FileOutputStream("D:/test.txt");
String content = "hello, world";
byte[] bytes = content.getBytes();
fos.write(bytes);
二、网络IO
Java中的网络IO主要通过Socket和ServerSocket类实现。
1. Socket通信
Socket代表一个连接到网络中的一个节点,可以被用来创建客户端和服务器端。可以通过Socket类连接到远程计算机,并向该计算机发送数据或者从该计算机接收数据,如下代码:
Socket socket = new Socket("127.0.0.1", 8080);
OutputStream os = socket.getOutputStream();
os.write("hello, world".getBytes());
os.flush();
socket.close();
2. ServerSocket通信
ServerSocket类用于创建服务器端,等待客户端连接。当一个客户端连接了服务器,服务器就为该客户端创建一个Socket,并将Socket返回给客户端,如下代码:
ServerSocket serverSocket = new ServerSocket(8080);
while(true){
Socket socket = serverSocket.accept();
InputStream is = socket.getInputStream();
byte[] bytes = new byte[1024];
is.read(bytes);
System.out.println(new String(bytes));
socket.close();
}
三、缓冲IO
Java中的缓冲IO可以通过BufferedReader和BufferedWriter来实现。
1. BufferedReader
BufferedReader提供了一个缓冲机制,通过它可以一行一行地读取数据,可以减少IO读写的次数,从而提高读写的效率,如下代码:
BufferedReader reader = new BufferedReader(new FileReader("D:/test.txt"));
String line;
while((line = reader.readLine()) != null){
System.out.println(line);
}
reader.close();
2. BufferedWriter
BufferedWriter提供了一个缓冲机制,通过它可以一行一行地写入数据,可以减少IO读写的次数,从而提高读写的效率,如下代码:
BufferedWriter writer = new BufferedWriter(new FileWriter("D:/test.txt"));
writer.write("hello, world");
writer.newLine();
writer.write("this is a test.");
writer.close();
以上就是Java中常用的IO函数的简要介绍。学会使用这些函数,在编程中进行文件的读写和网络通信将更加容易。
