Java中常用的IO流函数使用总结
Java中的IO流是一种管理数据流的方式,在程序中常用于文件读写和网络传输操作。IO输入和输出都支持字节流和字符流。Java中的IO分为两种流,字节流和字符流。字节流用于读写二进制数据,而字符流用于读写文本数据。Java中的IO操作有关键的字节流类和字符流类。以下是常用的IO流函数的总结。
一、FileInputStream 和FileOutputStream
Java中FileInputStream和FileOutputStream类分别是文件输入流和文件输出流的操作类。FileInputStream类可用于从文件读取数据,FileOutputStream类可用于把数据写入文件。
FileInputStream:
1.创建FileInputStream对象,可以用文件名字符串或File对象作为参数。
2.用int read()方法从输入流中读取字节,逐个字节读取,如果已达到末尾,则返回-1。
3.通过调用close()方法关闭文件。
FileOutputStream:
1.创建一个FileOutputstream对象,可以通过文件名字符串、File对象或输出依赖的另一个输出流作为参数。
2.使用write()方法写数据到输出流中,此方法在写入一字节后返回,如果没有出现IO异常,则表示成功写入数据。
3.通过调用close()方法关闭文件。
二、BufferedReader和BufferedWriter
Java中BufferedReader和BufferedWriter类可用于进行快速、高效的缓存读写操作,读写文本时常用它们。
BufferedReader:
1.用BufferedReader对象的构造函数将一个reader对象传递给它。
2.可以从BufferedReader读取文本行(包括换行符)。方法readLine()从输入流中读取数据,直到读取到换行符("
")或者是文件结尾。
3.通过调用close()方法关闭文件。
BufferedWriter:
1.用FileWriter对象的构造函数将一个writer对象传递给它。
2.利用BufferedWriter可以通过write()方法写入字符或字符数组。
3.通过调用close()方法关闭文件。
三、DataInputStream和DataOutputStream
Java中的DataInputStream和DataOutputStream类是二进制数据操作类,可以用于从输入流中读取基本数据类型的数据,或者将它们写入到输出流中。
DataInputStream:
1.创建DataInputStream对象,可以将一个InputStream对象传递给它。
2.通过使用readByte()、readInt()、readDouble()、readShort()、readUTF()等方法,从输入流中读取基本数据类型的数据。
3.通过调用close()方法关闭文件。
DataOutputStream:
1.创建DataOutputStream对象,可以将一个OutputStream对象传递给它。
2.通过使用writeByte()、writeInt()、writeDouble()、writeShort()、writeUTF()等方法,将基本数据类型的数据写入到输出流中。
3.通过调用close()方法关闭文件。
四、ObjectInputStream和ObjectOutputStream
Java中的ObjectInputStream和ObjectOutputStream类可以用于将Java对象序列化为二进制数据流或从反序列化数据流中获取Java对象。
ObjectInputStream:
1.创建ObjectInputStream对象,可以将一个InputStream对象传递给它。
2.通过readObject()方法从输入流中读取一个Java对象。
3.通过调用close()方法关闭文件。
ObjectOutputStream:
1.创建ObjectOutputStream对象,可以将一个OutputStream对象传递给它。
2.通过使用writeObject()方法将一个Java对象写入输出流中。
3.通过调用close()方法关闭文件。
总结:
Java中常用的IO流函数使用包括FileInputStream、FileOutputStream、BufferedWriter、BufferedReader、DataInputStream、DataOutputStream、ObjectInputStream和ObjectOutputStream。这些函数可以用于文件读写、网络传输和处理二进制数据。对于每一个IO流函数,我们需要使用它们提供的方法,如read()、write()、readLind()等方法进行操作。学会IO流函数的使用,可以提高程序的效率和性能,同时还能帮助我们更好地管理数据流。
