对象方法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
对象和方法
---------------------------------

原文地址:https://www.cnblogs.com/jiangu66/p/3100652.html