字节流
FileInputStream
以字节为单位从文件中读取内容,可以一次读取一个字节,也可以一次读取一个byte字节数组。
FileInputStream(File file)或FileInputStream(String name)
FileOutputStream
以字节为单位将内容存入文件,可以一次存入一个字节,也可以一次存储一个byte字节数组。
FileOutputStream(File file, boolean append)或 FileOutputStream(String name, boolean append)
字符流
FileReader
以字符为单位从文件中读取内容,可以一次读取一个字符,也可以以字符数组的形式一次读取多个字符。
FileReader(File filename)或FileReader(String filename)
FileWriter
以字符为单位将内容写入文件,可以一次写一个字符,也可以一次写入一个字符数组。
FileWriter(File filename)或FileWriter(String filename) 换行 fw.write("\r\n");
缓冲流
BufferedInputStream
以缓冲流的方式从文件中读取字节流,相比于单纯的字节流速度更快。
public BufferedInputStream(InputStream in)
BufferedOutputStream
以缓冲流的方式将内容存入文件中,相比于单纯的字节流速度更快。
public BufferedOutputStream(OutputStream out)
字节缓冲流
public BufferedReader(Reader in) //方法:public String readLine()
字符缓冲流
public BufferedWriter(Writer out) //方法:public void newLine()
转换流
常见的字符集有ASCII字符集、ISO-8859-1字符集、GBK、Unicode字符集、utf-8。
InputStreamReader(InputStream in, String charsetName) \\指定字符集
OutputStreamWriter(OutputStream in, String charsetName)
序列化流
要想使用序列化流必须该类必须实现java.io.Serializable
接口。如果是集合实现序列化该集合必须实现序列化接口,且集合存储的元素也必须实现序列化接口。如果一次存储多个类,建议使用集合。
ObjectInputStream
public ObjectInputStream(InputStream in)
// 创建反序列化流
FileInputStream fileIn = new FileInputStream("employee.txt");
ObjectInputStream in = new ObjectInputStream(fileIn);
ObjectOutputStream
public ObjectOutputStream(OutputStream out) \\常用方法:public final void writeObject (Object obj)
FileOutputStream fileOut = new FileOutputStream("employee.txt");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
打印流
字符打印流
下面是常用的方法,打印字符到内存中,可以自动换行。
PrintWriter(Writer out, boolean autoFlush) \\常用方法:void println(String s)
properties集合
Properties prop = new Properties();创建对象。prop.put(key, value)存放内容,
Object setProperty(String key, String value)设置key对应value的值,
String getProperty(String key)得到key对应的value值,
Set<String> stringPropertyNames()得到key值的集合。
void load(InputStream inStream)、void load(Reader reader)将文件内容加载到这里。
void store(OutputStream out, String comments)、void store(Writer writer, String comments)
将字节加载到文件中。