IO流分类,IO流常用基类,换行符,编码表,常用流,Properties集合
1、IO流的分类
按照数据流向分类:输入流,输出流。
按照数据类型分类:字节流,字符流。如果数据所在的文件通过Windows自带笔记本查看,使用用字符流,其余使用字节流。默认使用字节流。
2、IO流常用基类
字节流抽象基类:字节输入流InputStream,字节输出流OutputStream。
字符流抽象基类:字符输入流Reader,字符输出流Writer。
字符流=字节流+编码表。
基本字节流:FileInputStream,FileOutputStream
缓冲字节流:BufferedInputStream,BufferedOutputStream
基本字节流:InputStreamReader/FileReader,OutputStreamWriter/FileWriter
缓冲字节流:BufferedReader,BufferedWriter
read();
write();
close();
IO流复制的9种方式:字节4种:基本字节流读写字节,基本字节流读写字节数组,缓冲字节流读写字节,缓冲字节流读写字节数组。
字符5种:基本字符流读写字节,基本字符流读写字节数组,缓冲字符流读写字节,缓冲字符流读写字节数组,缓冲字符流读写字符串。
3、换行符
Windows:\r\n
Linux:\n
Mac:\r
4、编码表
ASCII、GB2312、GBK、BIG-5、UTF-8、Unicode......
5、常用流
数据类型流:DataInputStream,DataOutStream。
内存操作流:ByteArrayInputStream,ByteArrayOutputStream,CharArrayReader,CharArrayWriter,StringReader,StringWriter。
打印流:PrintStream,PrintWriter。
标准输入输出流:public static final InputStream in; //标准输入流
public static final PrintStream out; //标准输出流
InputStream is=System.in;
PrintStream ps=System.out;
随机访问流:RandomAccessFile(不属于流,但融合了InputStream和OutStream的功能)。
合并流:SequenceInputStream。
序列化流:ObjectOutputStream。
反序列化流:ObjectInputStream。
6、Properties集合
setProperty();
getProperty();
stringPropertyNames();
load();
store();