zoukankan      html  css  js  c++  java
  • 对象方法java_io

    本篇文章朋友在北京逛街的时候突然想到的...今天就有想写几篇关于对象方法的博客,所以回家到之后就奋笔疾书的写出来发表了

        flush()和close()的区别

        flush:刷新缓冲区,流对象还可以继承应用。

        close:刷新缓冲区,关闭流对象,流对象不可以继承应用

        1T=1024G

        1G=1024M

        1M=1024K

        1K=1024byte

        1byte=8bit

        字符流

        *Reader

        *FileReader  

        *int num=0;

        while((num=fr.read())!=-1){

                                  S.O.P((char)num);

                                }

        *char[] chs = new char[1024];

        int len=0

        while((len=fr.read(chs))!=-1){

        S.O.P(String.copyValueOf(chs,0,len));

                                      }

        *BufferedWriter

        特殊方法:public void newLine();写入一个行分割符,可以识别不同的系统

            *Writer

        *FileWriter

        *BufferedWriter

        特殊方法:public String readLine():根据行结束符读取一行数据,并把该行数据作为一个字符串返回。

        字节流

        *InputStream

        *FileInputStream

        *BufferedInputStream

        *OutputStream

        *FileOutputStream

        *BufferedOutputStream

        3:转换流(懂得)

        因为我想应用高效字符流的方法。

        InputStreamReader:字节流通向字符流的桥梁

        OutputStreamWriter:字符流通向字节流的桥梁

        4:IO流复制文件的操作法则(把握)

        (1)文本文件 -- 文本文件

        BufferedReader br = new BufferedReader(new FileReader("a.txt"));

        BufferedWriter bw = new BufferedWriter(new FileWriter("b.txt"));

        String line = null;

        while((line=br.readLine())!=null)

        {

        bw.write(line);

        bw.newLine();

        bw.flush();

        }

        bw.close();

        br.close();

        (2)文本文件 -- 控制台输出

        BufferedReader br = new BufferedReader(new FileReader("a.txt"));

        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        String line = null;

        while((line=br.readLine())!=null)

        {

        bw.write(line);

        bw.newLine();

        bw.flush();

        }

        bw.close();

        br.close();

        (3)键盘录入 -- 文本文件

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        BufferedWriter bw = new BufferedWriter(new FileWriter("b.txt"));

        String line = null;

        每日一道理
    如果人类不好好保护我们这个赖以生存的地球,终有一天,风沙的肆虐与垃圾的堆积会吞没我们美丽的家园。我向全世界的人们呼吁:让我们从现在开始,从我做起,手挽手,肩并肩共同保护建设我们的家园吧!

        while((line=br.readLine())!=null)

        {

        if("over".equals(line))

        {

        break;

        }

        bw.write(line);

        bw.newLine();

        bw.flush();

        }

        bw.close();

        br.close();

        (4)键盘录入 -- 控制台输出

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        String line = null;

        while((line=br.readLine())!=null)

        {

        //如果数据源是键盘录入,就得自定义结束

        if("over".equals(line)

        {

        break;

        }

        bw.write(line);

        bw.newLine();

        bw.flush();

        }

        bw.close();

        br.close();

        1:IO中特殊的流对象(懂得)

        (1)对象流,序列化流(懂得)

        ObjectOutputStream:

        void writeObject(Object obj)

        ObjectInputStream:

        Object readObject()

        注意:

        A:如果一个类的对象要想被对象流操作,就必须实现序列化接口。

        B:这个接口只是起到标识的作用,没有方法需要实现。

        C:如果类的简略修改不像影响程序的运行,我们就自己给定序列化id号。

        D:序列化:把对象按照流一样的方式在网络中传输和写入文本文件。

     反序列化:把文本文件的数据或者网络中传递的流对象数据解析成一个对象。

        (2)打印流(把握)

        PrintWriter:

        PrintStream:

        特点:

        A:可以写入任意类型的数据。

        B:如果启用了自动刷新,会在调用println方法的时候,刷新,并且还会自动换行。

        C:打印流也是可以直接操作文件的流对象。

        哪些流对象可以直接操作设备呢?

        查看结构方法,如果有File和String的结构参数同时存在的情况,

        该流对象就是可以直接操作设备的对象。

        把握的案例:

        BufferedReader br = new BufferedReader(new FileReader("a.txt"));

        PrintWriter pw = new PrintWriter(new FileWriter("b.txt"),true);

        String line = null;

        while((line=br.readLine())!=null)

        {

        pw.println(line);

        }

        pw.close();

        br.close();

        (3)Properties的应用(懂得)

        A:作为Map体制应用

        B:有自己的作为Map的特殊方法

        getProperty(String key)

        getProperty(String key,String defaultValue)

        setProperty(String key,String value)

        C:和IO的结合方法

        list:用打印流把集合中的数据写入文件

        load:用任意流把文件中的数据加载到集合中

        store:用任意流把集合中的数据写入文件

        D:案例:(把握)

        把prop.txt文件中的键为lisi的值修改成35。

    文章结束给大家分享下程序员的一些笑话语录: 女人篇
      有的女人就是Windows虽然很优秀,但是安全隐患太大。
      有的女人就是MFC她条件很好,然而不是谁都能玩的起。
      有的女人就是C#长的很漂亮,但是家务活不行。
      有的女人就是C++,她会默默的为你做很多的事情。
      有的女人就是汇编虽然很麻烦,但是有的时候还得求它。
      有的女人就是SQL,她会为你的发展带来莫大的帮助。

    --------------------------------- 原创文章 By
    对象和方法
    ---------------------------------

  • 相关阅读:
    Ubuntu下errno值
    Git 经常使用命令总结
    【我们都爱Paul Hegarty】斯坦福IOS8公开课个人笔记38 Unwind Segue反向过渡
    高斯噪声
    小记5.8面试
    基数排序之多keyword排序运用队列
    广告贴
    输入字符串反序输出
    Codeforces Round #313 A. Currency System in Geraldion
    matlab中怎样加入凝视
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3100652.html
Copyright © 2011-2022 走看看