IO流的基本操作

来源:互联网 发布:mv软件下载 编辑:程序博客网 时间:2024/06/04 19:46
流的基类
按流向区分:
输出流:OutputStream和Write作为基类
输入流:InputStream和Reader作为基类(程序读取文档)
按照流向划分:
流:输入流,输出流
按照处理单元划分:
流 : 字节流 字符流
字符流:字符输入流,字符输出流

字节流:字节输入流,字姐输出流

字节流;以字节单位处理的流(8位)
字符流;以字符单位处理的流(俩个字节16位)
流的基类:
输入流:以InputStream(字节为单位,字节输入流)和Reader(字符为单位,字符输入流) 为基类
输出流:以OutputStream(字节为单位,字节输出流)和Wirter(字符为单位,字符输出流) 为基类

//设置文件位置    public static final String bookName="E:/iop/tushu/book.txt";    //将map数据生成一个文件public static void booksave(Map initial) {ObjectOutputStream oos=null;try {oos=new ObjectOutputStream(new FileOutputStream(bookName));oos.writeObject(initial);//System.out.println("图书录入成功");} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} finally {try {if(oos!=null) {oos.flush();oos.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}//将上面存取的数据进行获取public static Map bookgetObject() {Map list=new HashMap<>();ObjectInputStream ois=null;try {ois=new ObjectInputStream(new FileInputStream(bookName));list.putAll((Map)ois.readObject());} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally {try {if(ois!=null) {ois.close();}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}return list;}

字节流转字符流
                FileInputStream fis=null;InputStreamReader isr=null;BufferedReader br=null;fis=new FileInputStream("E:/iop/NewmyDoc.txt");isr=new InputStreamReader(fis);br=new BufferedReader(isr);