卢雨杰1016

学习内容:

字符流:顶级父类,Reader:

实例方法

public void close() :关闭此流并释放与此流相关联的任何系统资源。

public int read() : 从输入流读取一个字符。

public int read(char[] cbuf) : 从输入流中读取一些字符

public abstract int read(char[] cbuf, int off, int len) : 从输入流中读取一些字符

public int read(CharBuffer target) :将字符读入指定的字符缓冲区 public void mark(int readAheadLimit) :标记流中的位置

public boolean ready() : 流是否准备好被读取

public void reset() : 重置流

public long skip(long n) : 跳过字符

// FileReader 类

    System.out.println(Charset.defaultCharset());

    File file = new File("d:\\temp\\test.txt");
    System.out.println(file.exists());
    FileReader in = new FileReader(file);
     int i;
     byte[] temp = new byte[3];
     char[] temp1 = new char[3];
     while((i = in.read(temp1)) != -1) {
         Charset utf = Charset.forName("utf-8");
         String s = new String (0,i,utf);
         System.out.println(new String (temp,0,i));
     }
    in.close();
    BufferedReader类
    File file = new File("d:\\temp\\test.txt");
    BufferedReader read = new BufferedReader(new FileReader(file));
       String temp   ;
    while( (temp=read.readLine() ) != null) {
        System.out.println(temp);
        System.out.println("------");

    }
    read.close();

OutputStreamWriter

java.io.OutputStreamWriter ,是 Writer 的子类,是从字符流到字节流的桥梁。使用指定的字符 集将字符编码为字节。它的字符集可以由名称指定,也可以接受平台的默认字符集

构造方法:

//创建一个使用默认字符编码的

OutputStreamWriter public OutputStreamWriter(OutputStream out);

//创建一个使用命名字符集的OutputStreamWriter。 public OutputStreamWriter(OutputStream out, String charsetName);

//创建一个使用给定字符集的OutputStreamWriter public OutputStreamWriter(OutputStream out, Charset cs);

//创建一个使用给定字符集编码器的OutputStreamWriter public OutputStreamWriter(OutputStream out, CharsetEncoder enc);

增强try
在 JDK 7 之前我们使用 try-catch 或 try-catch-finally 来处理异常。在使用资源的时最后都需要关 闭资源,所以一般我们在 finally 处关闭资源。比如:

序列化

Java 提供了一种对象序列化的机制。用一个字节序列可以表示一个对象,该字节序列包含该 对象的数 据 、 对象的类型和 对象中存储的属性 等信息。字节序列写出到文件之后,相当于文件中持久保存了一 个对象的信息。

Serializable
序列化需要类实现 java.io.Serializable 接口,也就是说不实现此接口的类将不能序列化或反序列 化。 Serializable 类的所有子类都是可序列化的。序列化接口没有方法或字段,仅用于标识可 串行化 的语义。我们把这样的空接口称为“标记接口”(Marker Interface)实现了标记接口的类仅仅是给自身 贴了个“标记”,并没有增加任何方法。

2 反序列化
如果能找到一个对象的 class 文件,我们可以进行反序列化操作,调用 ObjectInputStream 读取对 象的方法。

学习心得:

每天都完不成学习任务,就很烦,天天学的东西需要练习,之前学的东西也要巩固记忆,再弄一点其他的东西,一个晚自习的时间不够用,做到十点十一点走都还是完不成

标签

评论


© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1